Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Variable in Userform ausgeben
#1
Hallo zusammen,

habe durch mitlesen hier schon einiges lösen können aber jetzt komme ich nicht weiter.

Ich habe ein kleines Spiel programmiert und möchte am Schluss des Spieles den Verlierer bekanntgeben.
Das habe ich über die Variable "verlierer" gelöst. Diese wird dann mit spieler1 bis spieler4 abgeglichen und geschaut wer "verlierer" ist.
Die Spielernamen werden am Anfang eingegeben und in die jeweilige Variable geschrieben.

Dann möchte ich ausgeben "spieler1" (dort soll dann der Name des spieler1 stehen) hat verloren.

Das geht auch alles, wenn ich z.B. eine MsgBox ausgebe geht es ohne Probleme.

MsgBox "Spieler " & spieler1 & " hat verloren!

Dann kommt ja die MsgBox mit "Spieler -Apfelschorle- hat verloren!"

Das ganze hätte ich gerne mit einer Userform gelöst, in der ich auch noch ein Bild drin habe. Soweit bin ich auch schon, aber leider bekomme ich den Spielernamen nicht ausgegeben.
Aktuell ist es so das in der Userform das Bild ist, und ein Label mit dem Plaintext: "Spieler 1-4 hat verloren".
Ich kann also nur einen festen Text in die Userform eintragen, somit fehlt mir immer der richtige Name. Ist es überhaupt möglich aus dem VBA "Microsoft Excel Objekte" die Variablen in die "Formulare" zu übernehmen?

Vielen Dank schonmal.

Gruß Apfelschorle
Antworten Top
#2
Hallo,

du könntest zum Beispiel die Tag-Eigenschaft der Userform verwenden, siehe Beispiel.


Angehängte Dateien
.xlsm   Userform-Tag.xlsm (Größe: 20,51 KB / Downloads: 4)
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  •
Antworten Top
#3
Danke dir,

ich habe es jetzt so versucht, dein Vorschlag abgewandelt:

Im VBA Programm:

UserForm1.Tag = spieler1

und dann im userform:

Private Sub UserForm_Activate()
   Label1.Caption = "Spieler " & UserForm1.Tag
End Sub

Jetzt gibt er mir aber nur "Spieler" aus und der rest fehlt.

Gruß Apfelschorle
Antworten Top
#4
Hallo,

ich kenne nicht den Variableninhalt von Spieler1 und auch nicht deine Datei. Daher kann ich nichts dazu sagen.
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  •
Antworten Top
#5
Das ist richtig, sorry für die schlechte Angabe.


Am Anfang jeden Spieles wird abgefragt: "Wieviele Spieler" (1-4 Spieler), danach wird je nach Anzahl der Spieler abgefragt wie diese heißen.
Dies wird in der jeweiligen Variable hinterlegt: "spieler1 = horst", "spieler2 = apfelschorle", usw.

In der Userform möchte ich eben diese Variable, also den eingegebenen Spielernamen ausgeben so das der Verlierer beim Namen genannt wird.
In meinem Fall habe ich ja eine Userform mit einem Bild und einem Label erstellt, allerdings bekomme ich dort den Namen nicht ausgegeben.

Gruß Apfelschorle
Antworten Top
#6
Hallo,

ist die Variable Spieler1 überhaupt gefüllt bevor Du sie an die Tag-Eigenschaft übergibst?

Code:
MsgBox spieler1
UserForm1.Tag = spieler1
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  •
Antworten Top
#7
Ganz zu Beginn werden die Spielernamen auf 0 gesetzt. Zumindest 0 sollte also gegeben sein.

MsgBox nach der spielereingabe gibt auch den eingegeben namen aus. Aber bis zur Userform bekomme ich ihn nicht.


Gruß
Antworten Top
#8
Hallo,

könntest Du die Datei hier hochladen? Alles Andere ist ein Stochern im Nebel.
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  •
Antworten Top
#9
Habs hinbekommen! Vielen Dank.

Ich glaub ich Depp hab mich einfach vertippt gehabt. Da bekommt man so gute Hilfe und ist zu blöd um es umzusetzen...


Nochmals vielen Dank.

Gruß
Antworten Top
#10
Jetzt hab ich doch noch ein Problem.

Kann man hinter der Variable wieder Text bringen?

Hab es so,

Label1.Caption = "LOSER! " & UserForm1.Tag "du hast verloren"

aber das geht anscheinend so nicht.


Edit:

zweites & vergessen, jetzt gehts.... Nicht mein Tag!

Danke euch!

Gruß Apfelschorle
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste