Automatischer Auruf einer Benutzer-Funktion ?
Wicki
ich habe eine Mappe mit 2 Tabellen. Nur in Tabelle2, die eine Liste mit AutoFiltern enthält, ist genau 1 Bezugnahme in Zelle F1 auf eine von mir selbst erstellte Funktion:
=AF_KRIT(F7:G27)
Nun das Problem:
Wenn ich in Tabelle1 mit einer kleinen Schleife in der Sub-Routine "TextChanger" aus Modul1 an eine offenbar beliebige Stelle einen Text schreibe, wird nur im 1. Durchlauf die obige Funktion automatisch aufgerufen.
Kann mir jemand erklären warum diese Funktion automatisch aufgerufen wird ?
Die Sub aktiviert Tabelle1 und trägt dort in einige Zellen Text ein und beim 1. Durchlauf wird meine Funktion aufgerufen, deren Parameterbereich in Tabelle2 liegt, also nicht verändert wird.
Hier der Code in Modul1:
Private Sub TextChanger()
Dim inZeile As Integer
Sheets("Tabelle1").Activate
For inZeile = 30 To 35
If Cells(inZeile, 3) = "" Then
Cells(inZeile, 3) = "Hallo"
End If
Next inZeile
End Sub
Function AF_KRIT(r As Range)
Dim intCol As Integer
Dim intFilter As Integer
Dim rngFilter As Range
Dim strFilter As String
strFilter = "-"
With Sheets(2)
If .FilterMode And .AutoFilterMode Then
Set rngFilter = .AutoFilter.Range 'Filterbereich
For intCol = 1 To rngFilter.Columns.Count
With .AutoFilter.Filters(intCol)
If .On Then 'ausgewählte Filterspalte
strFilter = rngFilter.Cells(1, intCol) & ": " & .Criteria1
End If
End With
Next intCol
End If
End With
AF_KRIT = strFilter
End Function
Gruß Wicki