Hallo VBA-Gemeinde,
vorneweg, habe nur anfänger kentnisse in vba. bitte seid gnädig 
meine werte werden nicht zum entsprechenden modul weitergeleitet
ich habe in einer userform die funktion
private sub buttonc_Click()
'Kiste ist eine checkbox
If Kiste.Value = True Then k1 = True
End sub
dies rufe ich auf in
Option Explicit
Public k1 as boolean
Sub calc()
k1 = false
UserForm.Show
If k1 = True Then
MsgBox („aufruf:blub“)
End If
wieso werden meine werte nicht übernommen?
Hoffe ihr könnt mir helfen.
Luchs
Hallo Luchs,
meine werte werden nicht zum entsprechenden modul
weitergeleitet
private sub buttonc_Click()
'Kiste ist eine checkbox
If Kiste.Value = True Then k1 = True
MsgBox k1
End sub
k1 wird schon auf True gesetzt
Option Explicit
Public k1 As Boolean
Sub calc()
UserForm1.Show
MsgBox k1
End Sub
ABER „MsgBox k1“ kommt erst dann wenn die Userform beendet wurde, solange verharrt Vba an dieser Stelle.
Gruß
Reinhard
hallo reinhard,
erstmal danke für die schnelle und verständliche antwort!
diese msgbox war eigentlich nur ein beispiel, um zu testen ob meine werte in dem modul ankommen.
im prinzip hab ich ein programm, das in der userform mehrere werte durch usereingaben übergeben bekommt.
sobald man auf den knopf buttonc_Click() drückt sollen diese in dem sub calc() modul zum weiterverarbeiten zwischengespeichert werden.
die
gibt es eine möglichkeit, die userform.show methode zu terminieren, dabei die übergebenen werte gleichzeitig zwischen zu speichern?
Grüße Luchs
kann es sein, dass ich k1 hier festlegen muss
public k1 as boolean
’ in userform
(Kiste_Change ist eine checkbox)
Private Sub Kiste_Change()
if Kiste.Value = true then k1 = true
End Sub
gruß luchs
kann es sein, dass ich k1 hier festlegen muss
public k1 as boolean
’ in userform
Hallo Luchs,
nein.
Zum einen heißt es überall globale Variablen gehören in irgendein Standardmodul. Deshalb halte ich mich daran. Mag sein daß es auch in einer UF ginge, aber so Hinweise haben Hintergründe die ich ja gar nicht erkennen kann wenn es bei mir auch klappt, wenn ich die globale Variable in die UF reinschreibe.
Zum anderen, Profis versuchen globale Variablen zu vermeiden wo es geht.
Naja, die haben da auch 30-500 Module und Mappen von 300 MB zu pflegen 
Und da sind globale Variablen des Teufels bei der Fehlersuche 
Denn das Riesenproblem ist, wo in welchem der vielen Module wurde die verdammte Variable auf True gesetzt obwohl False drin sein sollte in dem Moment wo sie im Modul 501 geprüft wird.
Na dann frohes Suchen mit F8 *grins*
Gruß
Reinhard
dann werd ich mich an dich halten und diese teuflischen dinger um himmels willen vermeiden
hab mir gerade das programm komplett zerschossen, weil ich die iwo doppelt drin hatte
gott segne die sicherungen 
hab das problem jetzt gelöst,
indem ich das ganze einfach in Kiste_change()
initialisiert hab
danke dir vielmals!
Gruß luchs