Hallo zusammen,
vielleicht liegt es ja an der Sonne, die ab heute so herrlich scheint....
Ich möchte eine Konstante als String außerhalb der darstellbaren Zeichen definieren.
Diese Zeile funktioniert:
Private Const str31 As String = "1"
Aber in der folgenden Schreibweise eben nicht:
Private Const str0A As String = chr$(10)
Frage, hat jemand einen Tip, wie man Konstanten festlegt, die zu den nicht darstellbaren Zeichen gehören ?
Viele Grüße
Servus Lex,
hats Du's aml so probiert?
Private Const str0A As String = vbNewLine
Hab mir gerade mal ne msgbox aus 3 Konstanten zusammensetzen lassen, der Zeilenwechsel in o.g. Art hat dabei funktioniert
Gruß aus Berlin
Pat
Hallo Pat,
na ja... so richtig funktioniert es eben leider doch nicht, da es zwingend ein String sein muss.
vbNewLine erzeugt wohl Variant oder Integer aber keinen String......
Das richtige Beispiel dazu:
Habe eine Datei, wo die Felder durch &HA voneinander getrennt sind. Kannst Du Dir ja auch mal schnell erzeugen. Diese Datei dursuche ich u.a. mit dem Wert der String-Variable mittels INSTR und entnehme Textbereiche mit MID$ bzw. LEFT$ und RIGHT$.
Viele Grüße
Hallo,
Zitatso richtig funktioniert es eben leider doch nicht, da es zwingend ein String sein muss
???
ZitatvbNewLine erzeugt wohl Variant oder Integer aber keinen String
da kocht die Gerüchteküche und ist schlichtweg falsch.
Wenn lediglich chr(10) benötigt wird, lautet die entspr. VBA-Konstante
vbLf (LineFeed == chr(10) )
Und wozu eine "Neue Zeile" (vbLf, chr(10)) nochmal als Konstante deklarieren, wenn vbLf schon eine solche ist?
Wenn, denn:
Const str0A As String = vbLf
Eine Zuweisung direkt mit &HA als Hex10 dürfte auch nicht funktionieren, so es denn die Ziffern 1 und 0 ("10") ergibt.
Hallo Franz,
so wie Du es geschrieben hast funktioniert es !! Const str0A As String = vbLf DANKE !!
Es geht nicht in der Form Const str0A As String = vbNewLine
Ich hab da noch ein paar mehr Zeichen, die ich auch gerne auf diese Art definieren würde als da sind &H00, &H8, &HE, &H13, &H18, &H1A und &H1E. Könntest du mir bitte auch sagen, wie ich die definieren muss oder mir eine Quelle geben, wo ich das entnehmen kann ?
Viele Grüße
Hallo,
ZitatEs geht nicht in der Form Const str0A As String = vbNewLine
sag ich doch. vbNewline ist
chr(13) & chr(10)Nachdem in VBA keine Funktionen im Deklarationsausdruck einer Konstanten möglich sind, kannst Du evtl. solches verwenden:
Property Get cNull() As String
cNull = Chr(&H00)
End Property
Property Get cLF() As String
cLF = Chr(&H10)
End Property
und etwa so benutzen:
Msgbox "Jetzt" & cLF & "kam eine neue Zeile"