Anzeige
Archiv - Navigation
492to496
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
492to496
492to496
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Feldlänge v. dynamischen Feld

Feldlänge v. dynamischen Feld
29.09.2004 07:24:16
Wolfgang
Hallo
Ich hab folgendes Problem: Ich hab ein dynamischen Feld und es wird während der Laufzeit in einer anderen sub mit ReDim die Größe des Feldes geändert. Nun möchte ich im Hauptprogramm die Länge des Feldes herausfinden. Das klappt zwar mit UBound, aber wenn das Feld aus 0 Elementen besteht (noch keine ReDim Anweisung ausgeführt), bekomme ich einen Fehler. Wie kann ich das umgehen?
Dim strA() as String
...
laenge = UBound(strA)
Vielen Dank, Wolfgang

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Feldlänge v. dynamischen Feld
29.09.2004 07:31:34
Thomas
Hallo Wolfgang,
fang den Fehler auf, oder versuch's mal mit SafeArrayGetDim (s. Beispiele auf meiner Webseite).
Gruß
Thomas
Risi Thomas Softwareentwicklung
AW: Feldlänge v. dynamischen Feld
29.09.2004 07:47:28
Wolfgang
Naja den Fehler auffangen gefällt mir nicht so gut.
Kannst mit einen Hinweis geben wo auf deiner Seite ich das finde?
AW: Feldlänge v. dynamischen Feld
Wolfgang
Habs per Google gefunden!
Funktioniert, Danke!!!
Feldlänge v. dynamischen Feld
Beate
Hallo Wolfgang,
keine direkte Antwort auf deine Frage, aber:
- du könntest für deinen Bereich einen Namen dynamisieren (über Menü/Einfügen/Namen/Definieren...). Dann wird von VBA immer die richtige Größe angegangen. Angenommen, dein Bereich geht in Tabelle1 von C3 zu Cx dann lautet die Formel:
=INDIREKT("Tabelle1!$C$3:$C"&ANZAHL2(Tabelle1!$C:$C)+1)
- um das Problem zu umgehen, dass dein Code etwas machen will, obwohl der dyn. Bereich gerade die Größe 0 hat, könntest du mit IF sicherstellen, ob mind. 1 Eintrag vorliegt(wieder davon ausgehend, der erste Eintrag des Bereichs stünde in C3):
If Cells(65536, 3).End(xlUp).Row &gt 2 Then
'dein Code
End If
Ist C3 also leer, wird dieser Codeteil ja übersprungen.
Gruß,
Beate
Anzeige
AW: Feldlänge v. dynamischen Feld
29.09.2004 07:54:32
Wolfgang
Danke für die Antwort, aber es scheint du hast da was falsch averstanden. Es geht hierbei nicht um Tabellen.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige