Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1360to1364
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
Inhaltsverzeichnis

Problem mit Variable in Userform

Problem mit Variable in Userform
15.05.2014 23:09:07
Jörg
Hallo,
Ich habe eine kurze Verständnisfrage zum Thema Variable public.
ich habe eine Variable x in einem Standardmodul als public x as string deklariert.
Zuweisung x ="hallo"
Dann habe ich eine Userform erstellt mit einem Commandbutton und dem einfach den Code Msgbox x zugewiesen. Userform gestartet Knopf gedrückt leere Messagebox. Aus den Foreneinträgen zu diesem Problem geht eigentlich nur hervor Variable als public und Problem gelöst. Leider klappt das bei mir nicht. Wo liegt das Problem?

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Mach eine Konstante draus
15.05.2014 23:20:12
Matthias
Hallo
Probiers mal so ...
in ein Modul
Option Explicit
Public Const StrG = "Hallo"
im UserForm
Option Explicit
Private Sub CommandButton1_Click()
MsgBox StrG
End Sub

AW: Mach eine Konstante draus
15.05.2014 23:42:46
Jörg
Hallo Matthias,
Danke für deine Antwort, ja das funktioniert ganz gut, zumindest wenn man den Wert für die Variable nicht ändern will. Irgendwie muss das doch mit der Deklarierung als Public klappen, dass die Variable sowohl im Standardmodul als auch in der Userform verwendet werden kann.
Gruß
Jörg

Anzeige
dann so ...
15.05.2014 23:53:21
Matthias
Hallo
Ich weiß ja nicht wo Du der Variable den Wert zugewiesen hast ?
Dann mach es so
im Modul
Option Explicit
Public StrG As String
Im UserForm
Option Explicit
Private Sub CommandButton1_Click()
MsgBox StrG
End Sub
Private Sub UserForm_Initialize()
StrG = "Hallo"
End Sub
Gruß Matthias

AW: Mach eine Konstante draus
15.05.2014 23:51:27
Ewald
Hallo,
eine Variable kann geändert werden indem sie neu gesetzt wird,eine Konstante hat immer den gleichen Wert.
Private Sub UserForm_Activate()
x = "Hallo"
End Sub
Private Sub CommandButton1_Click()
MsgBox x
End Sub
Gruß Ewald

Anzeige
Hier das erste Mal :-( owT
16.05.2014 00:29:11
Matthias

AW: kannst du gerne haben
16.05.2014 00:55:40
Ewald
Hallo Matthias,
kenne zwar nicht (owt
Eine Konstante ist keine Variable und darum ging es
Gruß Ewald

kannst du auch gerne haben
16.05.2014 01:37:17
Matthias
Hallo
Eine Konstante ist keine Variable und darum ging es

    wer hat das denn behauptet ? (ich nicht)

Darum ging es eben nicht!
Die Konstante war ein Vorschlag von mir, denn in der Ausgangsfrage war nicht die Rede von Änderung der Variable.
Wer lesen kann ist eben klar im Vorteil.
Und wenn Du ein Ego-Problem hast, dann lass das bitte nicht an mir aus.
Gruß Matthias

AW:Was soll denn das
16.05.2014 01:49:19
Ewald
Hallo Matthias,
die Frage war
Ich habe eine kurze Verständnisfrage zum Thema Variable public.
du hast eine Variante mit einer Konstanten gepostet
ich habe dann den Weg für eine Variable gezeigt.
Das war doch nicht gegen dich gerichtet, es sollte nur zeigen wie es mit einer Variablen geht
Gruß Ewald

Anzeige
AW: AW:Was soll denn das
16.05.2014 08:54:30
Jörg
Hallo Matthias, hallo Ewald, hallo an alle anderen
Danke für den regen Meinungsaustausch.
Zusammenfassend kann man sagen, wenn man in einem Standardmodul eine Konstante als Public definiert, funktioniert es (Vorschlag von Matthias), Nachteil nur für einen Wert ("Hallo") möglich. Die Konstante steht für die komplette Arbeitsmappe zur Verfügung. Macht man das jetzt in einem Standardmodul, aber mit einer Variablen, definiert als Public, funktioniert die Variable nur im Standardmodul, nicht in einer Userform. In der Userform muss die Variable neu definiert werden. Ist das so richtig, sonst bombardiert mich mit Einwänden? ;-)
Gruß
Jörg

Anzeige
AW: AW:Was soll denn das
16.05.2014 09:03:25
Daniel
Hi
Variablen, die in einem Standardmodul unterhalb von Option Explizit als Public deklariert wurden (Modul1), sollten in allen Modulen der Datei funktionieren, also auch in Userforms.
Variablen, die in einem Tabellenplatz- oder Userformmodul als Public deklariert wurden, können auch in allen anderen Modulen verwendet werden, allerdings muss man dann den Modulnamen voranstellen: "Tabelle1.LngLetzteZeile"
Gruß Daniel

AW: AW:Was soll denn das
16.05.2014 09:11:39
Jörg
Hallo Daniel,
Danke für deine schnelle Antwort, ich werde es nochmal neu probieren, liegt vielleicht auch an der Abfolge meiner Programmierschritte.
Gruß
Jörg

Anzeige
AW: im Programmablauf muss
16.05.2014 09:14:47
Daniel
Sichergestellt sein, dass diese Variablen einen Wert zugewiesen bekommen, bevor sie das erste mal verwendet werden, sonst sind sie leer und haben keinen Wert.
Gruß Daniel

AW: im Programmablauf muss
16.05.2014 22:44:10
Jörg
Ja das war das Problem, die Reihenfolge der Programmierschritte war nicht in Ordnung. Danach hat es geklappt.
Gruß
Jörg

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige