Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VBS ReDim eines mehrdimensionalen Arrays in Schleife schlägt fehl

Frage Entwicklung VB for Applications

Mitglied: DemseinAdmin

DemseinAdmin (Level 1) - Jetzt verbinden

01.09.2008, aktualisiert 13:04 Uhr, 11370 Aufrufe, 3 Kommentare

Hallo zusammen,
habe erneut ein kleines Problemchen mit einem VBScript von mir.

Kurz zum Hintergrund des Ganzen:
Es geht um eine Auswertung von .txt-Logfiles, welche in ein .xls-File geschrieben werden sollen.
In den Textdateien werden Useranmeldungen von verschiedenen Rechnern geloggt.
Der Inhalt sieht z.B. so aus:
01.
User1;Pc001;12:15:22 
02.
User4;Pc002;17:18:01 
03.
User12;Pc003;17:30:45
Diese sollen nun in eine Excel-Arbeitsmappe in getrennten Spalten geschrieben werden. Dazu habe ich mir ein Script gebaut, habe aber ein Problem mit einem Array in dieser Schleife:
01.
i=0 
02.
Do While Not (file.atEndOfStream) 
03.
 Text = file.ReadLine 
04.
 Redim Preserve Arr(i, 2) 
05.
 Arr2 = Split(Text, ";") 
06.
 Arr2(i, 0) = Arr2(0) 
07.
 Arr2(i, 1) = Arr2(1) 
08.
 Arr2(i, 2) = Arr2(2) 
09.
 i = i + 1 
10.
Loop
Hinter "file" verbirgt sich das genannte Textfile.
Allem Anschein nach, gibts ein Problem mit der "Redim" Anweisung mit der Variable "i". Lege ich die Größe des Arrays manuell fest funktioniert alles tadellos, ansonsten gibts ein "Index außerhalb des gültigen Bereichs", sobald die Variable "i" bei dem Wert "1" angekommen ist, sprich ab dem zweiten Durchlauf der Schleife.
Kann mir jemand erklären wieso?

gruß
LiNDi
Mitglied: bastla
01.09.2008 um 11:58 Uhr
Hallo DemseinAdmin!

Du kannst ReDim nur auf die letzte Dimension anwenden, zB
01.
Redim Preserve Arr(2, i)
Je nachdem, was Du in weiterer Folge noch mit dem Array vorhast, könntest Du es auch gleich so versuchen:
01.
Text = Split(file.ReadAll, vbCrLF) 
02.
For i = 0 To UBound(Text) 
03.
    Text(i) = Split(Text(i), ";") 
04.
Next 
05.
'Demo für ersten Satz 
06.
For i = 0 To UBound(Text(0)) 
07.
    WScript.Echo Text(0)(i) 
08.
Next
Grüße
bastla
Bitte warten ..
Mitglied: AndreasHoster
01.09.2008 um 12:00 Uhr
ReDim kann nur die letzte Dimension eines Arrays in der Größe verändern.
Bitte warten ..
Mitglied: DemseinAdmin
01.09.2008 um 13:04 Uhr
Jau, besten Dank für die Antworten.
Ich werds mal so weiterprobieren.
Bitte warten ..
Ähnliche Inhalte
Firewall
Barracuda VPN Client - Installation schlägt fehl (3)

Frage von netzwerkschlumpf zum Thema Firewall ...

Windows 10
gelöst Windows 10 Pro Installation Hyper-V schlägt fehl (21)

Frage von Dominik-EUNES zum Thema Windows 10 ...

Windows Tools
gelöst DotNet Installation schlägt fehl (1)

Frage von emeriks zum Thema Windows Tools ...

Windows Server
TeamViewer 11 MSI Installation schlägt fehl (13)

Frage von Ghost108 zum Thema Windows Server ...

Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(5)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
Windows Server
gelöst Exchange HyperV Prozessorlast (19)

Frage von theoberlin zum Thema Windows Server ...

Windows Server
Server mit Netzwerkaussetzern (18)

Frage von SarekHL zum Thema Windows Server ...

Server-Hardware
gelöst SPP von HP Abwärtskompatibel? (14)

Frage von fireskyer zum Thema Server-Hardware ...

LAN, WAN, Wireless
gelöst Batchdatei um einen Proxy einzustellen (14)

Frage von CrystalFlake zum Thema LAN, WAN, Wireless ...