Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
408to412
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
408to412
408to412
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA: Grenze von Array

VBA: Grenze von Array
Array
Hallo allerseits,
...es sind meistens die "Kleinigkeiten", an denen ich hängen bleibe und wieder mal stell ich in Zweifel ob ich mit "VBA-gut" mich denn richtig eingeordnet habe.
Ich fülle ein Array in Abhängikeit der Einträge in SpalteA. Wenn ein Eintrag in SpalteA einem Kriterium entspricht, dann vergrößer das Array um eins und trage den entsprechenden Wert ein.
wenn jetzt jedoch keiner der Einträge in Spalte A dem Kriterium entspricht, wird nichts in das Array eingetragen. Hier hängt sich mein Code an der Stelle auf, wo ich die Obergrenze des Array weiter verwerten will.
Ich benötige also eine Klausel, die den weiteren Code nur dann ausführt, wenn es mindestens einen
Eintrag für das Array gibt.
im Sinne von:
'If Not arr1 = Nothing....
mal ein Bsp:
Option Explicit

Sub Testarray()
Dim arr1() As String, k As Integer, i As Integer, LRow As Integer
LRow = Cells(Rows.Count, 1).End(xlUp).Row
k = 0
For i = 3 To LRow
If Cells(i, 1) = "Hallo" Then
ReDim Preserve arr1(k)
arr1(k) = Cells(i, 1).Value
k = k + 1
End If
Next i
'hier Fehler wenn es kein "Hallo" gibt: Index außerhalb des gültigen Bereichs
If UBound(arr1) >= 0 Then
MsgBox UBound(arr1)
End If
End Sub

Vielen Dank für eure Hilfe
Gruß
Christoph

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: VBA: Grenze von Array
Array
Hallo
unter E 2000 sollte ein Array als Variant deklariert werden. Als String ist nur unter O97 nötig.
Frag doch zuerst K ab ;-) dann vermeidest du einen Fehler

Sub testArray()
'hier Fehler wenn es kein "Hallo" gibt: Index außerhalb des gültigen Bereichs
If k = 0 then
Msgbox "Kein Eintrag gefunden"
Exit Sub
Else
MsgBox Arr1(UBound(arr1))
End If
End Sub

Ist zwar ungetestet, ... sollte aber tun.
Gruss Rainer
vielen Dank, Ramses....
Christoph
Hi,
das war schon fast zu einfach.
funktioniert hervorragend.
Gruß
Christoph
Merci :-) Geschlossen o.-T.
Ramses
...
AW: VBA: Grenze von Array
Array
Hallo Rainer,
kannst du mir mal dein statement erklären? Das ist mir ja völlig neu.
Oder meinst du die Array- Funktion?
Gruß K.Rola
Anzeige
AW: VBA: Grenze von Array
Array
Hallo K.Rola
Ich weiss jetzt nicht so genau was du meinst.
Das mit Variant ?
Dann ist man flexibler ;-). Unter O97 wird eine Deklaration als Variant nicht akzeptiert,.. dort muss das Array als String definiert werden.
Ich hatte das Problem bei einem Makro um mit Outlook zu kommunizieren.
Da ist erst Gerd aus dem Forum draufgekommen, dass Variant unter O97 nicht funktioniert.
Gruss Rainer
AW: VBA: Grenze von Array
Array
Hallo Rainer,
schon klar, du hattest ja auch geschrieben "sollte" und für den speziellen
Fall.
Ansonsten wäre es ja sinnlos, ein Array für Integer- Werte als Variant zu deklarieren.
Gruß K.Rola
Anzeige
AW: VBA: Grenze von Array
05.04.2004 05:54:32
Array
hallo allerseits,
wieso soll das unter 97 nicht mit variant gehen? wen ich redimmen will gehts gar nicht anders - auch unter 97.
gruss andre

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige