• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Werken met modules/macro's

Status
Niet open voor verdere reacties.

ximon

Gebruiker
Lid geworden
14 jan 2014
Berichten
38
Hallo,

Ik ben bezig met het maken van een macro waar als ik op een knop druk een formulier wordt ingevuld en uitgeprint.
Ik heb het nu allemaal werkend alleen op een zeer omslachtige manier.
Voor iedere knop worden 2 modules aangemaakt. Ik zal zelf wel iets fout doen maar ik weet niet wat.
Ik ga nu als volg te werk : ik open Macro weergeven en vul een naam in van een nieuwe macro "test"
Dan klik ik op maken, er opent een venster waar ik mijn macro in plak(hij opent dan een blad van
een eerder gemaakte macro/module) dan save ik.
Als ik dan de macro aan een knop wil toewijzen werkt het niet, ik moet dan exel helemaal afsluiten
en weer openen dan open ik weer Macro weergeven, klik op de naam "test" en dan weer op maken.
Dan plak ik mijn macro er weer in klik op save en dan kan ik wel die macro aan een knop toevoegen.
Ik hoop dat het nog te volgen is wat ik allemaal heb getyped.
Ik heb het bestand toegevoegd misschien dat iemand er naar kan kijken en uitleggen wat ik fout doe.
Het gaat om het blad "LDN" daar staan de knoppen en het blad "CoLoad" word dan ingevuld.

Alvast hartsikke bedankt

Bekijk bijlage probeer1.xlsm
 
Waarom maak je al die modules aan? Eentje is in principe voldoende.
 
Dat is ook deels mijn vraag.
Ergens heb ik iets verkeerd gedaan waardoor ik zoveel modules heb.
Nu kom ik er niet meer vanaf. Ik heb alles al een keer eruit gegooid maar zodra ik weer begin maakt ie me alles dubbel.
Als ik alles verwijder blijft de naam Alk11 staan, als ik dan op maken duw begint het hele feest weer van voor af aan.
Op het moment dat ik een volgende macro toevoeg aan een module doet ie het niet.

Voor iedere nieuwe knop krijg ik toch ook een nieuwe macro??
 
Laatst bewerkt door een moderator:
Waarom doe je het niet gewoon in de VBE omgeving? (ALT+F11)
Dan heb je volledige controle over het geheel.
 
Ik ben een NOOB eerste klas wat excel betreft, ik leer hier veel......
Kom ik uiteindelijk niet bij het zelfde terecht? Als ik nu op ALT+F11 druk kom ik ook in die chaos terecht.
Misschien beter helemaal opnieuw beginnen??
Hoe kan ik alles verwijderen uit de macro tab?
 
Laatst bewerkt door een moderator:
Bij deze het bijna opgeruimde document. Er zijn nog maar 2 modules. 1 voor de print routines en 1 voor de kopieer routines. Voor 2 van die routines heb ik macro's gemaakt die je aan een knopje kunt hangen, Arn12 en Dra82. Als je die als voorbeeld neemt kun je de rest zelf wel aanpassen. Er is nu dus nog maar 1 routine die het kopiëren voor z'n rekening neemt. Ik hoop dat je de bedoeling en de werking begrijpt.

Bekijk bijlage probeer1.xlsm
 
Laatst bewerkt:
Hartstikke bedankt.
Als ik kan zien wat er gebeurt dan kom ik er wel uit.
Ik zal maandag kijken of ik eruit kom, nu tijd voor WEEKEND!!
Na apen kan ik wel.
Ik kom er altijd pas achter dat ik het via een omweg heb gedaan als ik bij het eindpunt ben belandt.

Nogmaals bedankt
 
Laatst bewerkt:
Je zult t.o.v. wat het was maar weinig code overhouden. Succes ermee :)
 
Nog wat meer plaats besparen.
Code:
Sub KopieerEnPrint(Sectie As String)
    Dim CopyArray() As String
    CopyArray = Split(Sectie, ",")
    For i = 1 To 17
        Sheets("CoLoad").Range(Choose(i, "G5", "A8", "I8", "A9", "I9", "A10", "I10", "A11", "I11", "A12", "I12", _
                "A13", "I13", "A14", "I14", "A15", "I15")) = Range(CopyArray(i - 1))
    Next

    Application.Run "PrintCoLoad"
End Sub
 
Da's voor het eerst dat ik van die Choose functie hoor. Mooi! :thumb:
 
Hallo,

Ik heb zitten kijken naar wat je gemaakt hebt Edmoor en ik denk dat ik door heb hoe het werkt.
Dus nogmaals harstikke bedankt voor je hulp.
Dat wat warm bakkertje heeft gedaan begrijp ik nog niet helemaal, misschien toch een cursus VBE ergens vandaan halen.
 
Als je eenmaal door hebt hoe je functies kunt nesten zul je dat van Rudi ook wel begrijpen. Het maakt de hoeveelheid code die je nodig hebt nog weer minder.
 
T'is wat

Code:
Sub KopieerEnPrint(Sectie As String)
    sn = Split(Sectie, ",")
    sp=split("G5 A8 I8 A9 I9 A10 I10 A11 I11 A12 I12 A13 I13 A14 I14 A15 I15") 

    For j=0 to ubound(sn)
        Sheets("CoLoad").Range(sn(j))= Range(sp(j))
    Next

    PrintCoLoad
End Sub
 
Netjes snb. En 't is zeker niet niks ;)
 
@Ed

kijk per ongeluk ook nog eens in de VBA bibliotheek bij 'Switch'. ;)
 
Kan ook een handige zijn inderdaad. Thanks :)
 
Hallo,

Heb ik toch nog een vraag, hoe kan ik alleen de cel inhoud kopieeren en niet de hele cel?
Ik zag dat ik bij een van de cellen een celwand niet goed had ingesteld waardoor ik in mijn uitgeprinte blad een streepje miste.
Op zich niet zo heel erg maar ik vroeg het me toch af.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan