Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1856to1860
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA 2.Userform über Aufruf öffnen
18.11.2021 12:07:10
jaschi
Hallo zusammen,
ich brauche mal wieder eure Hilfe.
Ich habe eine erste userform. Wenn ich auf einen button drücke startet der Ablauf der hinterlegten subs.
Jetzt möchte ich gerne, wenn das Programm an einer bestimmten Stelle angekommen ist,
eine zweite userform öffnen, in der eine Entscheidung über zwei buttons getroffen wird.
Nach drücken eines buttons soll das Programm in die erste userform zurückspringen und den
entsprechenden code ausführen.
Ich hoffe ich habe mich verständlich ausgedrückt.
Vielen Dank im voraus für eure Hilfe.
Gruß Alexander

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
bitte Code (besser Mappe) zeigen...(owT)
18.11.2021 12:13:40
Pierre
AW: VBA 2.Userform über Aufruf öffnen
18.11.2021 21:22:16
Yal
Hallo Alexander,
wenn es nur eine Nachricht, die zur Entscheidung führen soll, reicht es einen MsgBox.
Im Allgemein läuf tden Code weiter nach der Stelle, wo der Absprung stattfand.

Function HierFindetDieEntscheidung() As String
Dim Antwort As String
If MsgBox("Drucken Sie entweder Ja oder Nein", vbYesNo, "Entscheidung") = vbYes Then
Antwort = "Ja"
Else
Antwort = "Nein"
End If
MsgBox "Es wurde """ & Antwort & """ gedruckt."
'Übergabe des Ergebnis
HierFindetDieEntscheidung = Antwort
End Function
Sub HierlaeuftAlles()
Dim Speicher As String
MsgBox "Zuerst wird das gemacht"
Speicher = HierFindetDieEntscheidung
MsgBox "Hier geht es weiter"
MsgBox "zur Erinnerung: es wurde übrigens """ & Speicher & """ gedrückt."
End Sub
VG
Yal
Anzeige
AW: VBA 2.Userform über Aufruf öffnen
19.11.2021 12:35:08
jaschi
Hallo Yal,
vielen Dank für deine Antwort.
Es soll aber keine msgBox sein, sondern eine neue userform,weil ich hier die Buttons individuell bezeichnen kann.
Der Sprung von der userform1 zur userform2 funktioniert.
Dann habe ich beim ersten Button den Code

Private Sub Datenpunkte_Click()
Call Nachricht
End Sub
zum zurückspringen in die userform1 eingegeben aber es kommt eine Fehlermeldung.
Userbild
In der userform1 steht der code zum testen.
Sub Nachricht()
MsgBox
End Sub
Wo liegt mein Fehler?
Danke für eine Antwort.
Gruß Alexander
Anzeige
AW: VBA 2.Userform über Aufruf öffnen
19.11.2021 14:07:40
Yal
Hallo Alexander,
die Sub/Function innerhalb eines Userform sind Private, d.h. Du kannst diese nicht von "Draussen" sie adressieren.
Ausserdem reicht es den Userform zu schliessen, um genau nach der Stelle, wo Du verlassen hast, zurückzukehren. Unload Me ist das Zauberwort.

'in Userform1
Private Sub irgendwas_Click()
MsgBox "Davor"
Call Userform2.Show
MsgBox "Danach"
End Sub
'in Userform2
Private Sub HierPassiertWas_Click()
Unload Me
End Sub
VG
Yal
AW: VBA 2.Userform über Aufruf öffnen
19.11.2021 20:59:31
jaschi
Hallo Yal,
vielen Dank für deine Antwort.
Anscheinend ist das was ich vor habe nicht so einfach zu realisieren.
Ich möchte gerne wenn ich die userform2 über die userform1 aktiviere und die userform2 erscheint beim Drücken des Button "Datenpunkte" zurück zur userform1 in die "Sub DP_m6_Daten_kopieren_und_einfuegen()" springen und beim Drücken des Button "Feldgeräte" zur "Sub FG_m6_Daten_kopieren_und_einfuegen" springen.
Userbild
Ich hoffe Du kannst mir dabei helfen.
Wie Du schon bemerkt hast sind meine VBA Kenntnisse recht bescheiden.
Im voraus vielen Dank
Gruß Alexander
Anzeige
AW: VBA 2.Userform über Aufruf öffnen
19.11.2021 22:33:52
Yal
Hallo Alexander,
dann musst Du diese Subs in einem Modul ablegen (Einfügen, Modul) und diese dürfen nicht "Private" sein.
Im Userform-Codepane sollten nur die Sub/Function für den Userform sein.
VG
Yal
AW: VBA 2.Userform über Aufruf öffnen
21.11.2021 08:00:07
Alexander
Hallo Yal,
danke für deine Antwort.
Es hat funktioniert.
Jetzt brauche ich dein Wissen erneut.
Ich möchte jetzt noch aus dem Standardmodul noch einen code in der userform1 aufrufen,
der dann ausgeführt werden soll.
Danke im voraus.
Gruß Alexander
AW: VBA 2.Userform über Aufruf öffnen
21.11.2021 17:18:29
Yal
Hallo Alexander,
Ein Code muss nicht "im Userform" angelegt sein, um auf die Userform zu wirken.
Du kannst jedes Element vom Userform aus einem Modul steuern.
Probiere Mal in einem Modul:
Userform1.TextBox1= "Test"
Vorausgesetzt in Userform1 ein Element vom Typ Textbox mit dem Namen TextBox1 ist vorhanden.
Es ist aber richtig, dass ein Objekt, wie ein Userform, sich selbst steuern sollte. Aber manchmal geht es eben nicht.
VG
Yal
Anzeige
AW: VBA 2.Userform über Aufruf öffnen
22.11.2021 19:41:53
Jaschi
Hallo Yal,
es hat super funktioniert.
Tausend Dank für deine Unterstützung.
Gruß Alexander
Vielen Dank für die Rückmeldung
22.11.2021 19:51:18
Yal

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige