"Funktioniert nicht" und Fehlermeldungen ("Objekt erforderlich") ohne Code/Kontext sind nicht die beste Art, eine Frage zu stellen. Der erste ist eine völlige Zeitverschwendung; Der zweite Hinweis darauf, dass Sie Set
verwendet haben, wo Sie nicht sollten (VBScript-Arrays sind keine Objekte, daher sollte im Code kein Set
enthalten sein).
Dies zeigt die gleichen Fakten, die @omegastripes wies darauf hin, gibt aber Hinweise mögliche Gefahren wrt:
Option Explicit
Dim AoA : AoA = Split("s o m e|w o r d s|o f|d i f f e r e n t|l e n g t h", "|")
Dim i
For i = 0 To UBound(AoA)
AoA(i) = Split(AoA(i))
Next
WScript.Echo "----- test data:"
For i = 0 To UBound(AoA)
WScript.Echo Join(AoA(i), "")
Next
WScript.Echo "----- array assignment copies (For Each elem ... does not 'work'):"
Dim e
For Each e In AoA
e = "zap"
Next
For Each e In AoA
WScript.Echo Join(e, "")
Next
WScript.Echo "----- array assignment copies (change needs index access):"
For i = 0 To UBound(AoA)
e = AoA(i)
e(0) = UCase(e(0)) ' just changes the copy (e)
WScript.Echo Join(e, "")
AoA(i)(1) = UCase(AoA(i)(1)) ' access via indices changes org collection
WScript.Echo Join(AoA(i), "")
Next
WScript.Echo "----- replace whole subarrays (re-dimensioned dynamically):"
Dim n, m
For i = 0 To UBound(AoA)
e = AoA(i)
n = UBound(e)
ReDim Preserve e(n * 2 + 1)
For m = n + 1 To UBound(e)
e(m) = UCase(e(m - n - 1))
Next
AoA(i) = e ' replace whole element
WScript.Echo Join(AoA(i), "")
Next
Ausgang:
cscript 37951664.vbs
----- test data:
some
words
of
different
length
----- array assignment copies (For Each elem ... does not 'work'):
some
words
of
different
length
----- array assignment copies:
Some
sOme
Words
wOrds
Of
oF
Different
dIfferent
Length
lEngth
----- replace whole subarrays:
sOmeSOME
wOrdsWORDS
oFOF
dIfferentDIFFERENT
lEngthLENGTH
Würde nicht jeder sein, Sub-Array, so würde ich Tage haben Kopien von einem, anstatt Tage einzigartige Subarrays? Wie würde ich die Größe jedes einzelnen ändern, nachdem sie zugewiesen wurden? Ich bin mir nicht sicher, ob das wichtig ist, weil ich ein Object Required bekommen habe, als ich es trotzdem überprüfen wollte, haha – Naiya55