Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
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

Application.WorksheetFunction.DCountA

Application.WorksheetFunction.DCountA
11.05.2016 18:59:37
BlueBull
Ein schönen Guten Abend
über den folgenden Code möchte ich alle werte (Texte) die aus einer Gruppe kommen addieren. Der Code funktioniert auch, allerdings verstehe ich nicht warum ich bei dem 2ten Case Genehmigt Sum_Antraege abziehen muss um den korrekten Wert zu erhalten. Seh ich den Wald vor lauter Bäume nicht?
Über Anregungen wurde ich mich freuen...
Gruß
Sub Rechne()
Dim DBAnzVar As Range
Dim DB As Range
Dim i As Variant
Dim Antraege As Range
Dim DB_Antraege As Range
Dim Sum_Antraege As Range
Dim Genehmigt As Range
Dim DB_Genehmigt As Range
Dim Sum_Genehmigt As Range
' Fixe Werte
Set wks = Sheets("Tabelle1")
' Variablen für Suchkriterium
Set Antraege = wks.Range("B19")
Set Genehmigt = wks.Range("C19")
Set DB_Antraege = wks.Range("B19:B" & wks.Cells(Rows.Count, "B").End(xlUp).Row)
Set DB_Genehmigt = wks.Range("C19:C" & wks.Cells(Rows.Count, "C").End(xlUp).Row)
Application.ScreenUpdating = False
' Berechnung Einträge
For i = ActiveCell.Column To ActiveCell.Column + Selection.Columns.Count - 1
Set DBAnzVar = wks.Cells(4, i)
Set DB = wks.Range(Cells(4, i), Cells(17, i))
Select Case DBAnzVar
Case Is = Antraege
Set Sum_Antraege = wks.Cells(1, i)
Sum_Antraege = Application.WorksheetFunction.DCountA(DB, Antraege, DB_Antraege)
Case Is = Genehmigt
Set Sum_Genehmigt = wks.Cells(2, i)
Sum_Genehmigt = Application.WorksheetFunction.DCountA(DB, Genehmigt, DB_Genehmigt) - _
Cells(1, i) ' Warum muss ich bei diesem Fall Sum_Antraege abziehen?
End Select
Next
Application.ScreenUpdating = True
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Application.WorksheetFunction.DCountA
11.05.2016 19:54:57
Arthur
Hallo Frau BlueBullwithoutaname :)
Ich schätze folgendes:
Durch das End(xlUp).Row) wird der Bereich incl. der Summenzeile ausgewählt. Dann wird die Summe mit eingerechnet und muss wieder heraus.
Füge einfach mal den Select ein. Das könnte meine These verifizieren.
DB_Antraege.select
DB_Genehmigt.select
Gruß, Arthur.

AW: Application.WorksheetFunction.DCountA
11.05.2016 20:55:20
BlueBull
Leider Nein, lass ich das End(xlUp).Row weg zählt er nur die nichtleeren.
Jetzt weiß ich aber warum... die Werte sind "Identisch" und unterscheiden sich im ? am ende. Mit Fragezeichen kann VBA wohl nicht umgehen. Jetzt versteh ich auch warum man bei Ordner keine Sonderzeichen als Namen eingeben kann :D wieder was gelernt aber das löst mein Problem nicht.
Weist du wie man mit sowas umgehen kann?
Danke und Gruß Marc
Anzeige

19 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige