Clever-Excel-Forum

Normale Version: Horizontale Stringumwandlung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

habe folgendes Problem.

Statt der vertikalen Umwandlung der Werte in einen String

Code:
Dim str
str = Join(WorksheetFunction.Transpose(Range("A1:A5")))

brauche ich eine horizontale Umwandlung der Werte in einen String, also so etwas:

Code:
Dim str
str = ??? Range("A1:E1")
Hallo,

Code:
   With Application
       strtext = Join(.Transpose(.Transpose(Me.Range("A1:G1"))))
   End With
Code:
Sub M_snb()
   MsgBox Join(Application.Index([A1:E1].Value, 1, 0), "")
End Sub
Hallo Elke,

hier zwei in  2016 neue Möglichkeiten:

Code:
With Application
    MsgBox Join(.Transpose(.Transpose([A1:G1])))
    MsgBox Join(.Index([A1:G1].Value, 1, 0), "")
    MsgBox .TextJoin("", True, [A1:G1])
    MsgBox .Concat([A1:G1])
End With

TextJoin kann noch Trennzeichen einfügen.
schon in Excel 95:


Code:
Sub M_snb()
   MsgBox [A1&B1&C1&D1&E1&F1&G1]
End Sub
Hallo Helmut,

hast Du wirklich 2016 oder 365? Da gibt es ein paar Unterschiede, z.B. Textjoin ... Das bringt in 2016 einen Fehler 1004. Auch die IntelliSense kennt es nicht Sad Ich finde es nett formuliert schade, das MS hier solche Unterschiede macht ...


[attachment=11715]