Top-Themen

Aktuelle Themen (A bis Z)

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 ReDim Preserve endet mit Index außerhalb des gültigen Bereichs

Mitglied: ReiniX

ReiniX (Level 1) - Jetzt verbinden

24.01.2008, aktualisiert 17:02 Uhr, 12272 Aufrufe, 1 Kommentar

Hallo allerseits,

ich habe ein array:
dim temp()
redim preserve temp(2,0,0)

diesem kann ich wenn ich das recht verstanden habe so wie es ist 3 werte zuweisen:
temp(0,0,0)=wert1
temp(1,0,0)=wert2
temp(2,0,0)=wert3

nun möchte ich in meinem script das array vergrößern:
redim preserve temp(2,1,0)

meiner meinung nach sollte ich darin jetzt 6 werte speichern können:
temp(0,0,0)=wert1
temp(0,1,0)=wert2
temp(1,0,0)=wert3
temp(1,1,0)=wert4
temp(2,0,0)=wert5
temp(2,1,0)=wert6

das array vergrößert sich meiner meinung nach und verkleinert sicht nicht.
deswegen verstehe ich nicht warum mein script mit der Meldung "Index außerhalb des gültigen Bereichs" abbricht.

kann mir das jemand erklären oder hat eine lösung?

vielen dank!
Mitglied: Biber
24.01.2008 um 17:02 Uhr
Aus der script56.chm: [ReDim-Anweisung]
01.
Hinweise
02.
Die ReDim-Anweisung dient zum Festlegen oder Ändern der Größe eines dynamischen Arrays, das bereits formal mit einer Private, Public oder Dim-Anweisung und einem leeren Klammernpaar (ohne Indizes für die Dimensionen) deklariert wurde. Sie können die ReDim-Anweisung mehrmals verwenden, um die Anzahl der Elemente und Dimensionen in einem Array zu ändern.
03.
 
04.
Mit dem Schlüsselwort Preserve können Sie nur die Größe der letzten Arraydimension ändern, nicht aber die Anzahl der Dimensionen. Wenn das Array zum Beispiel nur eine Dimension hat, können Sie die Größe dieser Dimension ändern, weil es die letzte und einzige Dimension ist. Hat das Array jedoch mindestens zwei Dimensionen, können Sie lediglich die Größe der letzten Dimension ändern, wenn der Inhalt des Arrays erhalten bleiben soll. 
05.
 
06.
Das folgende Beispiel veranschaulicht, wie Sie die letzte Dimension eines dynamischen Arrays vergrößern können, ohne bereits bestehende Daten im Array zu löschen. 
07.
 
08.
ReDim X(10, 10, 10)
09.
. . .
10.
ReDim Preserve X(10, 10, 15)
11.
Anmerkung   Wenn Sie ein Array verkleinern, gehen die Daten in den entfernten Elementen verloren.
12.
Bei der Initialisierung von Variablen wird eine numerische Variable mit 0 und eine Zeichenfolgevariable mit einer Zeichenfolge der Länge Null ("") initialisiert. Einer Variablen, die auf ein Objekt verweist, muss ein vorhandenes Objekt mit der Set-Anweisung zugeordnet werden, bevor sie verwendet werden kann. Solange sie keinem Objekt zugewiesen ist, hat die deklarierte Objektvariable den Sonderwert Nothing.
--> "..Mit dem Schlüsselwort Preserve können Sie nur die Größe der letzten Arraydimension ändern"...
--> und nie nicht die Anzahl der Dimensionen.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Netzwerkgrundlagen

IP-Bereich vergrößern und DHCP-Bereich verlagern

gelöst Frage von knallsterNetzwerkgrundlagen11 Kommentare

Hallo zusammen, ich habe hier momentan ein 172.16.1.0/24-Netz, allerdings werden die Adressen langsam knapp. Meine Idee ist jetzt, auf ...

Datenbanken

Access nimmt immer Index Spalte

gelöst Frage von Pilger83Datenbanken6 Kommentare

ich möchte einen Hyperlink aufbauen in einem Textfeld in etwa so Pfad ; Wert aus Tabelle ="C:\test\" & Kombinationsfeld263 ...

Microsoft Office

Bereich mit variablen Bereich in einer anderen Tabelle

gelöst Frage von mreskeMicrosoft Office7 Kommentare

Hallo ich stehe gerade mit folgendem Problem auf dem Schlauch und hoffe, jemand hat eine Idee: Ich möchte die ...

Windows Server

Funktionsweise Windows Search remote Index

Frage von IsoldeBadenWindows Server8 Kommentare

Hallo liebe Mitstreier :-) ich habe mal eine Verständnis- bzw. Konfigurationsfrage bzgl. Windows Search, genauer gesagt der remote-index-Funktion. Ich ...

Neue Wissensbeiträge
iOS
WatchChat für Whatsapp
Tipp von Criemo vor 13 StundeniOS

Ziemlich coole App für WhatsApp User in Verbindung mit der Apple Watch. Gibts für iOS sowohl als auch für ...

iOS
IOS hat nen Cursor !!!
Tipp von Criemo vor 1 TagiOS5 Kommentare

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Off Topic
Avengers 4: Endgame - Erster Trailer
Information von Frank vor 3 TagenOff Topic2 Kommentare

Ich weiß es ist Off Topic, aber ich freue mich auf diesen Film und vielleicht geht es anderen hier ...

Webbrowser
Microsoft bestätigt Edge mit Chromium-Kern
Information von Frank vor 3 TagenWebbrowser5 Kommentare

Microsoft hat nun in seinem Blog bestätigt, dass die nächste Edge Version kein EdgeHTML mehr für die Darstellung benutzen ...

Heiß diskutierte Inhalte
Exchange Server
Exchange Server 2010: Keine Eingehenden E-MAils
gelöst Frage von gabeBUExchange Server17 Kommentare

Hallo Zusammen Ich habe das kurzen auf dem Exchange 2010 Server das Problem, dass ich keine externen E-Mails mehr ...

Server
Server in zwei verschiedene Netzwerke einbinden
gelöst Frage von BennyFServer13 Kommentare

Hallo zusammen, bei uns im Haus sind im Erdgeschoss die Geschäftsräume und ab dem 1. Stock sind unsere privaten ...

Windows Netzwerk
Kerio. Kann keine Mails empfangen aber senden. Wer ist schuld. Kerio oder Windows domäne?
Frage von frosch2Windows Netzwerk13 Kommentare

Hallo, es existiert ein Problem bei uns mit dem mailen. Alle bestehenden Nutzer können mailen. Raus wie rein. Neuen ...

Netzwerkmanagement
Ticketsystem für eine Kommune gesucht
gelöst Frage von akovisNetzwerkmanagement11 Kommentare

Ich suche aktuell ein Ticketsystem für eine Kleinstadt von 13000 Einwaohnern. Das System soll alle Anfragen aus verschiedenen Kanälen ...