Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Msgbox zeigt nur die erste Zeile

Msgbox zeigt nur die erste Zeile
Jörg-HH
Hallo zusammen
warum wird mir von dieser MsgBox nur die erste Zeile angezeigt?
MsgBox " Fertig !" & vbLf & vbLf & _
"Die folgende Speicherabfrage beim Schließen" & vbLf & _
"bitte mit Ja quittieren!", , ""
Hab's schon mit Klammern versucht, geht aber nicht :-(
Grüße - Jörg

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Msgbox zeigt nur die erste Zeile
11.12.2009 00:31:38
Josef
Hallo Jörg,
die MsgBox wir bei mir korrekt dargestellt!
Gruß Sepp

MsgBox Zeilenumbruch
11.12.2009 00:40:30
Beate
Hallo Jörg,
habe auch kein Problem. Aber dann probiere mal diesen Code:
Sub Test()
    MsgBox " Fertig !" & vbCrLf & vbCrLf & _
        "Die folgende Speicherabfrage beim Schließen" & vbCrLf & _
        "bitte mit Ja quittieren!"
End Sub


Guckst Du: MsgBox - Zeilenumbruch
Gruß,
Beate
Anzeige
vbCrLf hilft auch nicht...
11.12.2009 00:51:07
Jörg-HH
Hallo Beate
mit vbCrLf geht's auch nicht. Hätte mich auch gewundert - alle anderen MsgBoxen brechen anstandslos bei vbLf um...
Grüße - Jörg
upps...
11.12.2009 00:44:58
Jörg-HH
...seltsam - ja, Sepp - ich hab das jetzt mal in eine Dummydatei ausgegliedert - dort wird die Meldung auch korrekt angezeigt. Ist an dem Drumherum was faul?
''############# Einrichten des 2. Durchlaufs ##############
...
ElseIf Worksheets("ToDo").CmBtnRücklaufdatei.Caption = "2.Durchlauf" Then
MsgBox "Es wird nun für " & ProjName & " " & TPName & " " & vbLf & _
"die Kalkulation für den" & vbLf & "ZWEITEN Durchlauf eingerichtet.", vbOKOnly, "Kalkulation erstellen"
Worksheets("Formular").Range(wsConfig.Range("B13").Value).Value = 2
Worksheets("ToDo").CmBtnRücklaufdatei.Caption = "3.Durchlauf"
Worksheets("ToDo").CmBtnRücklaufdatei.Enabled = True
ActiveWorkbook.Save
MsgBox " Fertig !" & vbLf & vbLf & _
"Die folgende Speicherabfrage beim Schließen" & vbLf & _
"bitte mit Ja quittieren!", , ""
''############# Einrichten des 3. Durchlaufs ##############
ElseIf Worksheets("ToDo").CmBtnRücklaufdatei.Caption = "3.Durchlauf" Then
...
Grüße - Jörg
Anzeige
Hier erkenne ich nichts Besonderes,...
11.12.2009 02:09:39
Luc:-?
...Jörg,
es könnte aber sein, dass irgendeine Variable einen Fehlerwert liefert, dann wird die MsgBox übergangen. Fehlerwerte können hier nur über Textumwandlung [mit CStr(...)] dargestellt wdn.
Da du aber schreibst, dass nur die 1.Zeile angezeigt wird, muss wohl eine Variable einen so langen Text enthalten, dass er zwar bis zum Zeilenlängemaximum angezeigt wird, danach dann aber nichts mehr Platz hat, weil das Zeichenanzahlmaximum für MsgBoxes mit dieser einen Variable überschritten wird. Wenn man das an der erscheinenden MsgBox nicht erkennen kann, würde ich das als „Verkettung unglücklicher Umstände“ bezeichnen — man kann es auch schlicht Praxis nennen oder mit Tom Hanks „Shit happens!“ titulieren... ;-)
Gruß Luc :-?
Anzeige
@Luc : Da könntest Du Recht haben
11.12.2009 02:56:07
NoNet
Hey Luc,
Deine Theorie könnte stimmen - doch dazu muss nicht einmal eine besondere "Länge" des Textes definiert sein, es genügt bereits 1 Zeichen :
Sub test()
Dim strText As String * 1
MsgBox "abc" & strText & vbLf & "xyz"
End Sub
@Jörg : Hast Du den String etwa SO definiert ?
Gruß, NoNet
@NoNet: Die einzige Möglichkeit, dass die...
11.12.2009 11:29:17
Luc:-?
...Box erscheint und scheinbar nur 1 Zeile enthält, NoNet,
scheint mir doch zu sein, dass eine Variable mit einem Text geladen wird, der jede Menge Leerzeichen oder Vglbares enthält. Könnte bei Übernahme aus DBn schon mal vorkommen. Dadurch könnte die MaxZeichenzahl von 1023 überschritten wdn. Anhaltspkt für einen solchen Fall wäre, wenn die Box mehr Zeilen, wenn auch leer, zeigt, als für eine Zeile Text erforderlich wären (so optische 2-3 Zeilen mehr)...
Dass es in diesem Fall so ist, habe ich getestet!
Gruß Luc :-?
Anzeige
LOL - falsche Box... :-)
11.12.2009 11:30:38
Jörg-HH
oh mannooo, Leute - nicht zu fassen:
Ich hab an mehreren Stellen des Codes so eine simple Fertig-Meldung, und ich merke gerade, daß ich mit der textlichen Ergänzung an der falschen Meldung gebastelt habe...
Da verzweigt sich im Ablauf Einiges und läuft am Ende wieder zusammen, und ich hab schlicht die Übersicht verloren :-))
naja - auch nach zwei Jahren autodidaktischer VBA-Karriere empfinde ich mich immer noch als Anfänger - zu Recht, wie man sieht...
Wünsch euch allen ein schönes WE
Jörg
Naja, wenigstens haste'n'paar Zusatzinfos...orT
11.12.2009 11:51:24
Luc:-?
schöWE dito, Luc :-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige