Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel Zeilen dynamisch auslesen
#21
Hallo Ralf,

Zitat:spätestens jetzt wäre es geschickt, wenn Du Deine kleine Beispieldatei mal zur Verfügung stellst.

DAS .... hätte ich schon vor Ewigkeiten gefordert. Das weißt Du aber auch.
In einer trüben Brühe zu suchen, bringt eben auch bei größtem Enthusiasmus eher Frust als Erfolg.

Ich selbst habe aber so ungefähr vor zwei Minuten diesen Thread erst gelesen
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#22
So ich bin etwas in mich gegangen und habe meinen Code optimiert Smile

Jedoch funktioniert er noch nicht ganz und ich weiß nicht wieso :(

Als Fehlermeldung sagt er mir: Fehler beim Kompilieren: Datenfeld bereits dimensioniert.

Und zwar wenn ich mit Redim versuche die Größe meines Arrays zu ändern... Und da frag ich mich wieso gibt es die Möglichkeit es zu ändern, wenn er es nicht macht?

Aber ich kopier hier einfach mal meinen Code, vielleicht fällt euch ja auf, was ich falsch mache.


Code:
Sub summieren()

Dim Zähler As Integer
Dim Summe As Integer
Dim x As Integer
Dim Products(0) As String
Dim Product As String
Dim Arrayzähler As Integer
Dim i As Long
Dim Gefunden As Boolean
Dim Arraygröße As Integer

ThisWorkbook.Worksheets("Tabelle1").Activate
Randomize

Arraygröße = 0
Zähler = 1
Do
Arrayzähler = -1
   If Cells(Zähler, 1).Value = 0 Then
       Cells(26, 1) = "Wir sind fertig"
       Exit Do
   End If
       If Cells(Zähler, 1).Value = "EMEA" Then
           x = Cells(Zähler, 2).Value
           Summe = Summe + x
           Product = Cells(Zähler, 3).Value
       For i = 0 To UBound(Products)
           If Products(i) = Product Then
               Gefunden = True
               Exit For
           Else
               Gefunden = False
           End If
       Next i
       If Gefunden = False Then
           Arraygröße = Arraygröße + 1
           ReDim Preserve Products(0 To Arraygröße)
           Products(Arraygröße) = Product
       End If
       End If
Zähler = Zähler + 1
Loop

Cells(24, 5).Value = Products(0)
Cells(24, 6).Value = Products(1)
Cells(24, 7).Value = Products(2)

'Cells(24, 2).Value = Summe

End Sub
Antworten Top
#23
Hallo,

(10.11.2015, 10:51)Bärenmarke schrieb: Als Fehlermeldung sagt er mir: Fehler beim Kompilieren: Datenfeld bereits dimensioniert.

was ist an der Meldung uverständlich?

Du schreibst doch:  Dim Products(0) As String

Lass die 0 (Null) weg!!

Gruß Uwe
Antworten Top
#24
(10.11.2015, 11:26)Kuwer schrieb: was ist an der Meldung uverständlich?

Du schreibst doch:  Dim Products(0) As String


Unverständlich deshalb, weil er beim Debuggen beim Redim hängen bleibt. Hatte da nämlich zuerst eine 0 drinstehen, dann bekomme ich aber einen Laufzeitfehler und er bleibt bei For i = 0 To UBound(Products) hängen.

Verstehe allerdings nicht wieso :(
Antworten Top
#25
(10.11.2015, 11:38)Bärenmarke schrieb: Unverständlich deshalb, weil er beim Debuggen beim Redim hängen bleibt. Hatte da nämlich zuerst eine 0 drinstehen, dann bekomme ich aber einen Laufzeitfehler und er bleibt bei For i = 0 To UBound(Products) hängen.

Verstehe allerdings nicht wieso :(

Problem gelöst, ich hab jetzt vor der Do Schleife noch folgendes eingefügt:
ReDim Products(Arraygröße)

Danach ging es Smile

Jetzt fehlt mir nur noch ein Produkt, sprich ich muss meine Logik noch überarbeiten.
Das klappt jetzt auch Smile
Vielen Dank an euch, bis zur nächsten Frage Smile
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste