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

Problem mit VBA-Code und der Funktion Anzahl

Problem mit VBA-Code und der Funktion Anzahl
Probem
hallo,
weiß veilleicht jemand, wie der unten stehende vba-code abgeändert werden muß,
damit ich in den spalten D und E eine WENN-Abfrage eingeben kann, der code aber nur dann zu zählen beginnt, wenn die WENN-Abfrage WAHR ist.
Beispiel: ich möchte in D4 eine WENN-Abfrage durchführen, die sich auf die Zeile A4 bezieht, in D5 bezieht sie sich auf A5, in D6 auf A6, usw. ...
Wenn in Zelle A4 eine 1 zu finden ist, dann soll diese 1 auch in D4 auftauchen, wenn es eine höhere Zahl ist, soll D4 leer bleiben.
So schön, so gut...das kriege ich selber noch hin...nur leider führt das dazu, daß ja jetzt in jeder zelle etwas eingetragen ist (nämlich die WENN-Abfrage) und folglich funktioniert der vba-code nun nicht mehr...
oder gibt's da vielleicht irgendeine andere Möglichkeit, um die Zahlen automatisch von A4 nach D4 rüberzukopieren, wenn in A4 eine 1 steht?
ich hoffe, ich hab mich verständlich ausgedrückt...

Function Special_CountIf2() As String
Application.Volatile
Dim lRow1 As Integer, lRow2 As Integer
Dim i As Integer, cellCounter As Byte
Dim tmpSum1 As Double, tmpSum2 As Double
lRow1 = Cells(65536, 4).End(xlUp).Row
lRow2 = Cells(65536, 5).End(xlUp).Row
cellCounter = 0
tmpSum1 = 0
tmpSum2 = 0
If lRow1 > lRow2 Then
For i = lRow1 To 4 Step -1
If Not IsEmpty(Cells(i, 4)) Then
If cellCounter = 24 Then Exit For
tmpSum1 = tmpSum1 + 1
cellCounter = cellCounter + 1
End If
If Not IsEmpty(Cells(i, 5)) Then
If cellCounter = 24 Then Exit For
tmpSum2 = tmpSum2 + 1
cellCounter = cellCounter + 1
End If
Next i
Else
cellCounter = 0
For i = lRow2 To 4 Step -1
If Not IsEmpty(Cells(i, 4)) Then
If cellCounter = 24 Then Exit For
tmpSum1 = tmpSum1 + 1
cellCounter = cellCounter + 1
End If
If Not IsEmpty(Cells(i, 5)) Then
If cellCounter = 24 Then Exit For
tmpSum2 = tmpSum2 + 1
cellCounter = cellCounter + 1
End If
Next i
End If
Special_CountIf2 = tmpSum1 & "/" & tmpSum2
End Function

viele grüße
vom jake.

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Problem mit VBA-Code und der Funktion Anzahl
25.04.2004 20:52:07
Björn
Hallo Jake,
ich gehe mal davon aus, dass Du in deinen WENN-Abfragen den Sonst-Fall auf "" gesetzt hast (Zelle D4: = Wenn(A4=1;1;"").
In Deinem Code musst Du nun "Not IsEmpty" suchen und ersetzen durch "1=" (Ausdrücke natürlich jeweils ohne die ""). Aber Vorsicht, die gleiche Bedingung gilt dann sowohl für Spalte D als auch für Spalte E. Falls das nicht gewünscht ist, muss man da noch ein wenig basteln.
Gruß
Björn
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige