Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Was ist denn "dlg.[Zahl].Text"? | Herbers Excel-Forum


Betrifft: Was ist denn "dlg.[Zahl].Text"? von: Reinhard
Geschrieben am: 24.02.2010 13:26:27

Hallo Wissende,

woanders half ich jmdn. das da, was bis 20 geht zu verkürzen:
If dlg.[Zahl].Text = "1" Or dlg.[Zahl].Text = "3" Or dlg.[Zahl].Text = "4" Or ...
Also das Thema ist beendet.

Vorher fragte ich nach was denn dlg so sei, darauf kam:

************************************************************************************
Beim Öffnen der Excel-Datei wird ein UserForm (also besser gesagt ein Dialogfeld) angezeigt.
In diesem Dialogfeld gibt es ein Feld Namens "Zahl".
dlg.[Zahl].Text -- ist der Text, der in das Feld "Zahl" eingetragen wird.
************************************************************************************

Da ich befürchte daß meine Lösung um die If-Abfrage abzukürzen genommen wird ohne mir weitergehende Nachfragen zu beantworten frage ich hier, ist dlg ein "Microsoft Excel5.0 Dialog" den ich quasi als Tabellenblatt einfügen kann?

Wie mache ich es nun in Excel daß so ein Dialog geöffnet wird?
Und diese eckigen Klammern irritieren mich. Kenne ich nur von [A1] anstatt Range("A1").

Danke ^ Gruß
Reinhard

  

Betrifft: AW: Was ist denn "dlg.[Zahl].Text"? von: Hajo_Zi
Geschrieben am: 24.02.2010 13:31:04

Hallo Reinhard,

die Frage hast Du Dir doch schon selber Beantwortet, es ist eine Userform mit dem Namen dlg

GrußformelHomepage


  

Betrifft: AW: Was ist denn "dlg.[Zahl].Text"? von: Reinhard
Geschrieben am: 24.02.2010 13:39:12

Hallo Hajo,

danke dir, ich kam nicht auf die Idee das zu testen, da ich dachte es wäre keine UF.

Private Sub CommandButton1_Click()
MsgBox UserForm1.[TextBox1].Text
End Sub

klappt, ich sehe nur den Sinn der eckigen Klammern nicht. Gibt es da was was man wissen müßte?

Ich stelle die Frage auf noch offen wegen dem Anzeigen so eines XL5 Dialogfeldes.

Gruß
Reinhard


  

Betrifft: AW: Was ist denn "dlg.[Zahl].Text"? von: Hajo_Zi
Geschrieben am: 24.02.2010 14:57:49

Hallo Reinhard,

die Frage nach [] hat Rudi beantwortet.

Gruß Hajo


  

Betrifft: AW: Was ist denn "dlg.[Zahl].Text"? von: Reinhard
Geschrieben am: 24.02.2010 15:04:27

Hallo Hajo,

die Antwort von Rudi habe ich schon gelesen aber nicht so schlußgefolgert.
[] bedeutet Evaluate? Also wie "Auswerten" bei XL4 Makros?

Nur wenn du das auswendig weißt, sonst teste ich halt.

Gruß
Reinhard


  

Betrifft: Vermute, eher Name o.ä.,... von: Luc:-?
Geschrieben am: 24.02.2010 15:56:08

…Reinhard,
so als Ersatz für "…" bei Objektbezeichnern → steht dann für ein ganzes Objekt wie bei Ranges. Insofern dann schon mit der Wirkung von Evaluate vglbar…
Sieh doch einfach mal in der Hilfe, vermutlich unter Operator, nach…!
Gruß Luc :-?


  

Betrifft: Erläuterungen zu EVALUATE bzw. [ ] von: NoNet
Geschrieben am: 24.02.2010 16:06:40

Hallo Reinhard,

vielleicht helfen Dir folgende ältere Beiträge zum Thema EVALUATE weiter :

https://www.herber.de/forum/archiv/1100to1104/t1103012.htm#1103020
https://www.herber.de/forum/archiv/1080to1084/t1083856.htm#1084175
http://www.ms-office-forum.net/forum/showthread.php?p=1184914#poststop

Gruß, NoNet


  

Betrifft: Siehste, deshalb verwende ich das auch... von: Luc:-?
Geschrieben am: 25.02.2010 05:19:39

…nicht, NoNet… ;-)
Falls es sich dabei wirklich immer um Evaluate handeln sollte, könnte es nämlich Probleme mit udFktt geben, die so etwas enthalten, falls man die mal AUSWERTEN muss. Ich habe die Erfahrung gemacht, dass eine Formel, die eine udF enthält, die ihrerseits Evaluate benutzt, in einer Prozedur nicht mittels Evaluate ausgewertet wdn kann. Viell gilt das auch für solch einfache Fälle wie Bereichs-/Objektnamen. Evaluieren innerhalb einer lfd Evaluierung scheint idR nicht zu fktionieren…
Gruß Luc :-?


  

Betrifft: Stimmt - interessanter Aspekt :-) _oT von: NoNet
Geschrieben am: 25.02.2010 15:53:23

_oT


  

Betrifft: []=Evaluate ... von: Rudi Maintaire
Geschrieben am: 24.02.2010 13:34:25


und in dem Fall überflüssig, da es sich bei dlg doch um ein UserForm handelt.

Und die Abfrage macht man besser mit Select Case

Select  Case dlg.Zahl.Text
Case "1","2","3","4","5"
'mach dies
Case Else
'mach was anderes
End Select
Gruß
Rudi