Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1732to1736
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
Inhaltsverzeichnis

CountIF

CountIF
21.01.2020 19:39:47
Thomas
Ich möchte in einer Variable a die Anzahl der Werte aus Spalte A während der Laufzeit ermitteln.
Das was ich suche steht in SPALTE B
Als Formel habe ich probiert in Spalte C1 =Countif(A:A;B1) ich bekomme die Anzahl in C1 angezeigt.
Das ist bei einer Tabelle mit mehr als 100.000 Zeile sehr zeitaufwendig.
Mein Ansatz
DIM Wsf as Worksheetfunction
DIM Bereich as Range
DIM Suche= as Range
Set Wsf = Application.WorksheetFunktion
Set Bereich =Sheets("Tabelle1").Range("A:A")
Set Suche =Sheets("Tabelle1").Range("B1")
a=WsfCountif(Bereich,Suche)
Ich bekomme Error 1004
was mache ich Falsch.
Ich würde wenn ich ein Ergebnis bekomme das suchen durch eine Schleifen Variable ersetzen und die Ergebnisse auf ein weiteres Tabellenblatt schreiben.
Danke für euere Hilfe.

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

Betreff
Datum
Anwender
Anzeige
AW: CountIF
21.01.2020 20:17:37
Sigi
Hallo Thomas,
setze mal statt "WsfCountif" die vollständige Fkt. "a = WorksheetFunction.CountIf(Bereich, Suche)" ein.
Gruß
Sigi
AW: CountIF
21.01.2020 20:59:54
Thomas
Danke werde ich mal versuchen und mich wieder melden.
AW: CountIF
22.01.2020 07:12:12
Thomas
Das gleiche Problem.
Ich weiß nicht mehr was ich noch probieren kann um während des Makros den Wert zu berechnen.
AW: CountIF
22.01.2020 10:11:18
Sigi
Hallo Thomas,
bei mir läuft dies problemlos. Vielleicht ist was mit deiner Mappe. Teste mal mit einer neuen (unberührten) Mappe:
Sub Zaehlen()
Dim Bereich As Range
Dim Suche As Range
Dim a As Double
Set Bereich = Sheets("Tabelle1").Range("A:A")
Set Suche = Sheets("Tabelle1").Range("B1")
a = WorksheetFunction.CountIf(Bereich, Suche)
MsgBox "Anzahl:  " & a
End Sub
Gruß
Sigi
Anzeige
dir fehlt ein .
22.01.2020 12:46:54
Rudi
Wsf.CountIf(..)
Gruß
Rudi
und Suche ...
22.01.2020 12:50:11
Rudi
… solltest du als Variant deklarieren
Sub test()
DIM Wsf as Worksheetfunction
DIM Bereich as Range
DIM Suche
Set Wsf = Application.WorksheetFunktion
Set Bereich =Sheets("Tabelle1").Range("A:A")
Suche = Sheets("Tabelle1").Range("B1")
a = Wsf.Countif(Bereich,Suche)
End Sub

AW: und Suche ...
22.01.2020 19:00:55
Thomas
Danke für euere Hilfe der direkte Aufruf wie von Sigi dargestellt ging mit einen neuen Dokument und neuen Makro.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige