Vba Userform koppeling??

Status
Niet open voor verdere reacties.

Stagiar

Gebruiker
Lid geworden
12 feb 2010
Berichten
6
Hallo,

Na een heel eind zoeken heb ik zelf op mijn vraag nog steeds geen antwoord gevonden,
Daarom stel ik mijn vraag eens op een forum,

De vraag:

Hoe kan ik een module (koppelen) gebruiken (aan) in een userform door middel van een commandbutton??

En hoe kun je de ingevulde waardes in Userform1
Ook laten gebruiken in bewerkingen via userform2??

alvast bedankt,
Senne
 
Hoi Senne,

Als je een UserForm maakt en je zet er een CommandButton in, dan klik je rechts op die button en kies: programmacode weergeven.
Daar zet je je macro in.
Elke keer als je op die CommandButton klikt wordt je macro dan uitgevoerd.

Voor het antwoord op je tweede vraag moet je je probleem iets duidelijker stellen.

Groet, Ed
 
Bedankt Ed,
Dit zal ik morgen eens proberen.

En met mijn andere vraag bedoel ik, Als je verschillende Userforms heb aangemaakt en je zorgt ervoor dat je na het invullen van de ene userform(1) naar de andere userform(2) springt terwijl Userform(1) al bewerkingen heeft uitgevoerd, maar 2Userform(2) er nog extra bewerkingen moet aan toeveoegn. Maar daarvoor heb je weer enkele waardes nodig uit Userform(1).

Of Anders Verwoord.

In Userform(1) staat TxtBreedte, nadat men op een Commandbutton drukt, voert hij de berwerkingen van Userform(1) uit en komt Userform(2) tevoorschijn. deze voert ook een bewerking uit, maar heeft hiervoor weer Txtbreedte nodig uit Userform(1).

Ik wil dus vermijden dat als men een waarde in Userform(1) invult die niet meer in Userform(2) moet opnieuw ingevult worden.

Greetz,
Senne
 
Zelden is het gebruik van meer dan 1 userform noodzakelijk/wenselijk/zinvol.
 
Een simpele manier is door de waarde van TxtBreedte met UserForm1 in een cel op je werkblad te zetten.
UserForm2 kan hem dan zo weer uitlezen:
Code:
UserForm1(code):
Private Sub CommandButton1_Click()
   Sheets(1).[A1] = TxtBreedte
End Sub

UserForm2(code)
Private Sub UserForm_Activate()
   TxtBreedte = Sheets(1).[A1]
End Sub
Je kan ook cel Z5000 nemen, dan heb je er geen last van.

Succes, Ed
 
Inderdaad, zo neemt hij de waarde over.

bedankt daarvoor ed.

mvg,
Senne
 
En hoe kun je de ingevulde waardes in Userform1
Ook laten gebruiken in bewerkingen via userform2??

Je kan de gegevens doorgeven met een variabele:

Code:
userform1 (code)

public txtbreedte as string

private sub commandbutton1_click()
  txtbreedte = textbox1
  userform2.show 
  unload me
end sub

userform2 (code)

private sub userform_activate()
  textbox1 = userform1.txtbreedte
end sub

Let er wel op dat:
bij de code van userform1 "[userform].show" komt voor "unload me" te staan, als je dit niet doet kan de 2de userform de gegevens niet lezen!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan