vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Problem mit ReDim 
Autor: Shinichi
Datum: 25.04.08 17:33

Hallo Leute.

Also ich habe ein dynamisches Array, das Global in einem Modul deklariert ist:

Option Explicit
Option Base 1
 
...
 
Global bolObjects As Boolean
Global Objects () As typObjects
 
...
In einem anderen Modul stehen folgende Prozeduren zum speichern bzw. lesen des Arrays

...
 
Public Sub WriteFile()
 
   Dim intFileHandle As Integer
   Dim lngCounter As Long
   Dim lngUBound As Long
 
   intFileHandle = FreeFile
   Open App.Path & "\Data.dat" For Binary Access Write As intFileHandle
 
   Put intFileHandle, , bolObjects
   If bolObjectsAdded Then
      Put intFileHandle, , CLng(UBound(Objects))
      For lngCounter = 1 To UBound(Objects)
         Put intFileHandle, , Objects(lngCounter)
      Next lngCounter
   End If
 
   Close intFileHandle
 
End Sub
 
Public Sub ReadFile()
 
   intFileHandle = FreeFile
   Open App.Path & "\Data.dat" For Binary Access Read As intFileHandle
 
   Get intFileHandle, , bolObjects
   If bolObjectsAdded Then
      Get intFileHandle, , lngUBound
      ReDim Objects(lngUBound)
      For lngCounter = 1 To UBound(Objects)
         Get intFileHandle, , Objects(lngCounter)
      Next lngCounter
   End If
 
   Close intFileHandle
 
End Sub
 
...
Nun möchte ich im Code für mein Formular beim hinzufügen von Feldern folgende einfache Anweisung ausführen:

Option Explicit
Option Base 1
 
Private Sub Command1_Click()
 
...
 
ReDim Preserve Objects(Ubound(Objects)+1)
 
...
 
End Sub
Leider erhalte ich da immer die Fehlermeldung

"Laufzeitfehler 9: Index ausserhalb des gültigen Bereichs"

was ja eigentlich bei einer ReDim-Anweisung eigentlich normal sein sollte o.O

Ich kann sowohl durch ReDim ohne Preserve das Array vergrößern/verkleinern als auch mit Redim Preserve Objects(UBound(Objects)-1) das Array verkleinern. Das komische ist, dass dannach die Anweisung funktioniert, nur eben nicht direkt nach dem Laden.

Weiß jemand wo hier der Fehler liegt?
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Problem mit ReDim1.022Shinichi25.04.08 17:33
Re: Problem mit ReDim594Zardoz25.04.08 17:51
Re: Problem mit ReDim562Shinichi25.04.08 18:22
Re: Problem mit ReDim599Shinichi25.04.08 18:42
Re: Problem mit ReDim625Shinichi26.04.08 08:05

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel