If abfrage mit VB6 (aus excel)

Guten Tag

Suche schon den ganzen Tag nach einer lösung und stelle ich sie öffentlich

ich habe eine Tabelle mit 2 Spalten
es soll überprüft werden ob in der 2. Spalte ein bestimmtes wort steht
und wenn ja den Wert ein der 1. Stalte gleiche Zeile zu einer summe addiert werden. das ganze soll in einer schleife nach unten laufen.

Ich steh grade immer noch bei der If abfrage

Spalte 1 Spalte 2

5 Fix
3 Udo
5 Bol
4 Fix
1 Udo
6 Fix

Summe Fix 15, Durschnitte 5, ingesammt 3

Habs mit Range() und mit Cells() probiert.
Range hat meine Coutervariable nicht genommen
und bei Cells() spring das IF nicht an

If Cells(Spallte, Zeile).Value = „Fix“ Then
FIX_V = FIX_V + Cells(Spallte - 1, Zeile).Value
End If

mfg Robert

hallo Robert,

ich habe eine Tabelle mit 2 Spalten
es soll überprüft werden ob in der 2. Spalte ein bestimmtes
wort steht
und wenn ja den Wert ein der 1. Stalte gleiche Zeile zu einer
summe addiert werden. das ganze soll in einer schleife nach
unten laufen.

muß die Schleife sein? Excelfunktionen sind zigtausendmal schneller, grad bei großen datenmengen merkt man das spürbar.

Wie wärs denn mit

FIX_V=Application.Sumif(…)

Die parameter und die parameterreihenfolge ist identisch mit der Excelfunktion SummenWenn(). Dies wird in der Hilfe ja bestens erläutert.
Die Parameter halt in VBA-Schreibweise, also nicht A:A sondern Range(„A:A“).

Habs mit Range() und mit Cells() probiert.
Range hat meine Coutervariable nicht genommen

Es geht mit Range und Cells, da wirst du wohl einen Fehler im Code haben.

und bei Cells() spring das IF nicht an

K.A., woher soll ich wissen welchen Wert Spallte und Zeile zu dem Zeitpunkt hatten, ob das richtige Blatt aktiviert war, ob in der Zelle "Fix " und nicht „Fix“ stand u.v.m.

Gruß
Reinhard

If Cells(Spallte, Zeile).Value = „Fix“ Then
FIX_V = FIX_V + Cells(Spallte - 1, Zeile).Value
End If

Hallo Robert,

die Syntax von Cells ist

Cells(Zeile,Spalte)

Gruß
Reinhard