Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel VBA CountIf-Funktion in aktiver Zeile
#1
Hallo ins Forum,

habe (mal wieder) ein VBA-Problem.

Ich habe eine Tabelle1, in welcher im Bereich J9:NK26 Personaldaten stehen.

Nun möchte ich bei einem Aufruf einer Userform über die CountIf-Funktion bestimmte Daten (Bspw. "KR" oder "UR" etc.) aus der jeweils aktiven Zeile im benannten Bereich auszählen und in eine Textbox eintragen lassen.

Das Auszählen für den gesamten Bereich klappt hervorragend, aber an der jeweils aktiven Zeile scheitere ich gerade.

Würde mich freuen, wenn ihr helfen könntet...

Vielen Dank im Voraus!
Antworten Top
#2
Hallo,

(23.02.2023, 08:56)MuMa0806 schrieb: Das Auszählen für den gesamten Bereich klappt hervorragend, ...

wie sieht denn das aus?

Gruß Uwe
Antworten Top
#3
Code:
Private Sub UserForm_Initialize()


textbox1.Value = Application.WorksheetFunction.CountIf(ws_Dienstplan.Range("J9:NK27"), "KR")



End Sub

hier zum Beispiel um die Kranktage auszuzählen.

VG
Antworten Top
#4
Hallo,

Code:
Private Sub UserForm_Initialize()
  Dim rngDienstplan As Range
  Dim rngZeile As Range
  Dim ws_Dienstplan As Worksheet
  Set ws_Dienstplan = ActiveSheet
  Set rngDienstplan = ws_Dienstplan.Range("J9:NK27")
  If Not Intersect(rngDienstplan, ActiveCell.EntireRow) Is Nothing Then
    Set rngZeile = Intersect(rngDienstplan, ActiveCell.EntireRow)
    Textbox1.Value = Application.WorksheetFunction.CountIf(rngZeile, "KR")
  End If
End Sub

Gruß Uwe
Antworten Top
#5
Hallo Uwe,

das funktioniert ja wirklich einwandfrei.

Vielen herzlichen Dank für deine Hilfe...damit komm ich ein ganzes Stück weiter voran!!!

Bis ganz bestimmt zum nächsten mal! Wink

Marcel
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste