Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1408to1412
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

Einträge im Spalte zählen mittels CountIf

Einträge im Spalte zählen mittels CountIf
17.02.2015 12:19:24
Martin
Hallo zusammen,
kann mir vielleicht jemand unten stehendem Code helfen?
Ich möchte aus einem Verzeichnis aus allen Dateien die Anzahl der "Pass" bzw. "Fail"
zählen. Diese stehen in den jeweiligen Datein im Reiter "General" in der Spalte B.
Was leider nicht funktioniert ist dass die beiden Variablen PassCount und FailCount immer 0 zurück liefern. Der Rest scheint soweit zu funktionieren.
Verwende ich CountIf falsch, oder habe ich sonst irgendwo einen Denkfehler?
Vielen Dank schon mal voraus.
MFG
Martin
--------------------------------------------------------------------------
Private Sub ReadReports_Click()
Dim shQuelle As Worksheet, shZiel As Worksheet
Dim FolderPath As String
Dim fso As Object
Dim fld As Object, f As Object
Dim r As Range
Dim Suche1 As String, Suche2 As String
Dim PassCount As Double, FailCount As Double
Set shZiel = ThisWorkbook.Sheets("Autotests")
shZiel.Range("A7:G50").ClearContents
Suche1 = "Pass"
Suche2 = "Fail"
FolderPath = shZiel.Cells(3, 3).Value
If FolderPath = "" Then Exit Sub
Set fso = CreateObject("Scripting.FileSystemObject")
Set fld = fso.GetFolder(FolderPath)
Set r = shZiel.Cells(6, 1)
Application.ScreenUpdating = False
If fld.Files.Count > 0 Then
On Error Resume Next
For Each f In fld.Files
Set r = r.Offset(1, 0)
r = f.Name
Set r = r.Offset(0, 2)
'Ermittlung Pass
Set shQuelle = GetObject(FolderPath & "\" & f.Name).Sheets("General")
PassCount = shQuelle.Application.WorksheetFunction.CountIf(Columns(2).Select, Suche1)
MsgBox (f.Name & " " & Suche1 & " " & PassCount)
r = PassCount
Set r = r.Offset(0, 1)
'Ermittlung Fail
FailCount = shQuelle.Application.WorksheetFunction.CountIf(Columns(2).Select, Suche2)
MsgBox (f.Name & " " & Suche2 & " " & FailCount)
r = FailCount
Set r = r.Offset(0, -3)
Application.CutCopyMode = False
shQuelle.Parent.Close SaveChanges:=False
Next
End If
Application.ScreenUpdating = True
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Einträge im Spalte zählen mittels CountIf
17.02.2015 12:23:17
ransi
Hallo
Ungetestet:
PassCount = Application.WorksheetFunction.CountIf(shQuelle.Columns(2), Suche1)
bzw:
FailCount = Application.WorksheetFunction.CountIf(shQuelle.Columns(2), Suche2)
ransi

AW: Einträge im Spalte zählen mittels CountIf
17.02.2015 12:45:41
Martin
Danke, genau das wars.
Gruss
Martin

AW: Einträge im Spalte zählen mittels CountIf
17.02.2015 12:25:45
Rudi
Hallo,
PassCount = Application.WorksheetFunction.CountIf(shQuelle.Columns(2), Suche1)
Gruß
Rudi

AW: Einträge im Spalte zählen mittels CountIf
17.02.2015 12:48:03
Martin
Danke, hab tatsächlich vergessen die Quelle anzugeben.
Gruss
Martin
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige