ich habe jetzt bereits seit einigen Tagen und Versuchen dass Problem, dass eine Funktion einfach nicht das machen will, was ich mir eigentlich erhofft habe.
Sie soll mit zwei Integers, eine für Zeile, eine für Spalte, gefüttert ein Range Objekt von der Anfangs bis zur letzten gefüllte Zelle erzeugen und dieses zurückliefern, so dass es durch eine Andere Funktion durchsucht werden kann. Der relevante Code:
'Funktion erstellt Range-Objekt, das durchsucht werden soll
'Funktion funktioniert nicht wie ichs mir dachte :-(
Function bestimme_bereich(ByVal row As Variant, ByVal col As Variant)
Dim last_row As Variant
last_row = Cells(Rows.Count, col).End(xlUp).row
Set bestimme_bereich = ActiveSheet.Range(Cells(row, col), Cells(last_row, col))
End Function
'Funktion sucht Anzahl der Übereinstimmungen
'in bereich cell mit dem wert datum
Function suche_datum(ByVal rngBereich As Range, ByVal datum As String)
Dim cell As Variant, i As Integer
i = 0
For Each cell In rngBereich
If cell.Value = datum Then
i = i + 1
End If
Next
suche_datum = i
End Function
Sub Datumssuche()
'Spalte U test
bereich = bestimme_bereich(101, 21)
colU = suche_datum(bereich, "TT.MM.JJJJ")
a = Cells(Rows.Count, 1).End(xlUp).row + 1
Cells(a, 2).Value = colU
End Sub
Im Bezug auf die Funktion bestimme_bereich in der Zeile
Set bestimme_bereich = ActiveSheet.Range(Cells(row, col), Cells(last_row, col))
erscheint die Fehlermeldung:
- Laufzeitfehler "91" Objektvariable oder With-Blockvariable nicht festgelegt
Was mache ich falsch, wieso ist das falsch, wie wäre es richtig, warum?
Vielen Dank schon einmal
GothicFiction