Hallo ich brauche Hilfe bei einem Array

Hallo,

Also ich habe ein Array erstellt und diesen will ich dann wieder geben.

und zwar so:

MsgBox ("Er Arbeitet in den Stationen: " + Arr2(1) + ", " + Arr2(2) + ", " + Arr2(3) + ", " + Arr2(4) + ", " + Arr2(5) + ", " + Arr2(6) + ", " + Arr2(7) + ", " + Arr2(8) + ", " + Arr2(9) + ", " + Arr2(10))

Das klappt auch auser das wenn ich nur die ersten 3 Arrays gefüllt habe er mir dann trozdem die ", " anzeigt.

Wie bekomme ich das hin mit einem

For X = 1 To UBound(Arr)
 MsgBox Arr2(X)
Next X

oder so,
das problem ist da zeigt er es mir nicht als eine msg sondern als so viele msg wie ich Arr(x) habe.

hoffe man versteht was ich haben will…

vielen dank schon mal
mfg
Leo

Hi,

du strickst dir aus dem Array zuerst einen String, den du dann anzeigst. In etwas so (ungetestet):

Dim ausgabe as string
dim i as integer

ausgabe = "Er Arbeitet in den Stationen: "

for i = 1 to ubound(arr2)-1
if arr2(i) „“ then
ausgabe = ausgabe & arr2(i) & ", "
end if
next i
ausgabe = ausgabe & arr2(ubound(arr2))

msgbox(ausgabe)

MsgBox ("Er Arbeitet in den Stationen: " + Arr2(1) + ", "

  • Arr2(2) + ", " + Arr2(3) + ", " + Arr2(4) + ", " + Arr2(5) +
    ", " + Arr2(6) + ", " + Arr2(7) + ", " + Arr2(8) + ", " +
    Arr2(9) + ", " + Arr2(10))

Das klappt auch auser das wenn ich nur die ersten 3 Arrays
gefüllt habe er mir dann trozdem die ", " anzeigt.

Hallo Leo,

vielleicht so:

Sub tt()
Dim X As Integer, strArr2 As String, arr2(1 To 10) As Variant
arr2(1) = "Hello"
arr2(2) = "world"
For X = LBound(arr2) To UBound(arr2)
 If arr2(X) "" Then strArr2 = strArr2 & "," & arr2(X)
Next X
If strArr2 "" Then MsgBox Mid(strArr2, 2)
End Sub

Gruß
Reinhard

Vielen dank ihr beiden, eure hilfe hat mir zur lösung gebracht :smiley:

Danke

Hallo,
wenn auch etwas zu spät:
Sieh mal in der OH unter Join nach.

Gruß
Vincenz