Zellenbereich wird nicht erkannt
11.01.2023 12:03:25
Kalle
ich möchte nochmals eure Hilfe in Anspruch nehmen, für eine Fehlersuche fehlen mir hierfür meine Kenntnisse.
Hier einmal die Beschreibung, wenn also der Bereich Q7;Q12 6 Werte aus den Bereich Z16:Z21 übernommen hat, sollte der Zähler +1 bekommen und danach den Inhalt leeren, bis ein neuer Klick für diesen Bereich wieder neue Werte von Z16:Z21 übernommen werden.
In diesen Bereich Q7:Q12 habe ich diese Formel in das Excel-Blatt Tabelle 1 (Tabelle1) mit Abschluss der geschweiften Klammer eingegeben.
Q7 [=WENN(ODER($Z$15=12);INDEX($Z$16:$Z$21;1;Spalte(A7));"")} .... :Index ($Z$16:$Z$17;Spalte A7));) So sah der Formel-Inhalt in Q7:Q12
Q8 [=WENN(ODER($Z$15=12);INDEX($Z$16:$Z$21;1;Spalte(A7));"")} .... :Index ($Z$17:$Z$17;Spalte A8));) vorher aus, ohne geschweifte Klammern.
Q9 [=WENN(ODER($Z$15=12);INDEX($Z$16:$Z$21;1;Spalte(A7));"")} .... :Index ($Z$18:$Z$18;Spalte A9));)
Q10 [=WENN(ODER($Z$15=12);INDEX($Z$16:$Z$21;1;Spalte(A7));"")} .... :Index ($Z$19:$Z$19;Spalte A10));)
Q11 [=WENN(ODER($Z$15=12);INDEX($Z$16:$Z$21;1;Spalte(A7));"")} .... :Index ($Z$20:$Z$20;Spalte A11));)
Q12 [=WENN(ODER($Z$15=12);INDEX($Z$16:$Z$21;1;Spalte(A7));"")} .... :Index ($Z$21:$Z$21;Spalte A12));)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i, Z
Application.EnableEvents = False
With Range("Q7:Q12")
If Not Intersect(Target, .Cells) Is Nothing Then
For Each Z In .Cells
If Z.Value "" Then i = i + 1
Next
If i = 6 Then Range("M1") = Range("M1") + 1
End If
End With
Application.EnableEvents = True
End Sub
Mit diesem VBA Code und nach Eingabe der geschweiften Klammer wurden die Formeln in diesem Bereich Q7:Q12 automatisch verändert und die Zelleinhalte haben jetzt immer den gleichen Wert, der Zähler hat keine Information und zählt nicht. Wenn ich die Formel ändere, kommt die Fehlermeldung: Teile einer Matrix können nicht geändert werden. Der VBA Code kann diesen Bereich vieleicht nicht erkennen um den Zähler zu aktivieren. Vieleicht gibt es dafür eine Lösung, danke im Voraus.
Gruß Kalle