Thema Datum  Von Nutzer Rating
Antwort
Rot Array mit variabler Länge - ReDim
22.05.2017 10:11:14 Mike1988
NotSolved
22.05.2017 20:20:14 Gast64121
NotSolved
22.05.2017 21:26:42 Mike1988
NotSolved
22.05.2017 23:33:10 Gast52427
NotSolved
22.05.2017 23:34:05 Gast5940
NotSolved
23.05.2017 17:53:18 Mike1988
Solved

Ansicht des Beitrags:
Von:
Mike1988
Datum:
22.05.2017 10:11:14
Views:
1665
Rating: Antwort:
  Ja
Thema:
Array mit variabler Länge - ReDim

Hallo liebes Forum,

Kämpfe gerade mit VBA bzw. mit Arrays, welche eine variable Länge besitzen sollen:

Innerhalb der Variable Nr speichere ich eine eindeutige Nummer. Tabellenblatt 1 soll in Spalte P nach dieser Nummer durchsucht werden. Jeder gefundene Eintrag soll in das Array Ergebniss geschrieben werden. Nun habe ich allerdings das Problem, dass ich von vornherein nicht weiß, wie oft die gesuchte Zahl gefunden wird und somit wie lang dass Array sein muss. Habe dann etwas gegoogelt und bin auf den Befehl ReDim gestoßen, welchen ich allerdings nicht ohne Fehler implementieren kann. Erhalte bei jedem Aufruf einen Laufzeitfehler Nr. 9 :-(

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Sub Auswertung
 
Dim arr As Variant
Dim Objekt_Nr As Variant
Dim Ergebniss(5000) As Variant
 
Application.ScreenUpdating = False
Worksheets("Tabelle2").Select
LetzteZeile = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
 
For FortlaufendeNummer = 2 To LetzteZeile
Nr = ActiveSheet.Cells(FortlaufendeNummer, 5).Value
 
With Worksheets("Tabelle1")
    arr = .Range("P2:P" & .Cells(.Rows.Count, 1).End(xlUp).Row)
End With
   k = 0
For i = 2 To UBound(arr)
 
If CStr(arr(i, 1)) = Nr Then
 
ZeileNr = i
        Ergebniss(k) = Worksheets("Tabelle1").Cells(i, 1)
        k = k + 1
         End If
        
         Next
          
If Ergebniss(0) ="" Then
 
Sheets("Tabelle2").Cells(FortlaufendeNummer, 17) = "Error"
Erase Ergebniss
End If
Erase Ergebniss
Next
 
 
Application.ScreenUpdating = True
 
End Sub

Kann mir vielleicht jemand bei der variablen Erstellung des Arrays behilflich sein. Bin auch gerne für weitere Verbesserungen offen, die Ausführung des Codes dauert ziemlich lange, gibt es vielleicht eine elegantere Möglichkeit?

 

Danke für eure Hilfe, GLG


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Array mit variabler Länge - ReDim
22.05.2017 10:11:14 Mike1988
NotSolved
22.05.2017 20:20:14 Gast64121
NotSolved
22.05.2017 21:26:42 Mike1988
NotSolved
22.05.2017 23:33:10 Gast52427
NotSolved
22.05.2017 23:34:05 Gast5940
NotSolved
23.05.2017 17:53:18 Mike1988
Solved