Clever-Excel-Forum

Normale Version: Laufzeitfehler 13 Typen unverträglich
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

anbei die Bsp. excel Datei.

Ich erhalte, wenn ich auf Spalte "K" mehrere Zellen aufeinmal markieren möchte, diesen Fehler: "Laufzeitfehler 13 Typen unverträglich"

Oder wenn ich Spalte "J" einmal aufsteigend sortiere und danach mit STRG+Z rückgängig mache, erhalte ich die gleiche Fehlermeldung nochmal.

Was muss ich im VBA ändern, damit die Fehlermeldung nicht kommt?

Danke!
Hallo,

füge folgende Codezeile als erste Zeile in Deinen Code ein:

Code:
If Target.Coun > 1 Then Exit Sub
Hi, vielen Dank erstmal.

Jetzt sieht es so aus bei mir:

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Coun > 1 Then Exit Sub
    If Intersect(Range("K18:K375"), Target) Is Nothing Then Exit Sub
    If Target = "X" Then
    Target = ""
    Else
    Target = "X"
    End If
End Sub

Jetzt erhalte ich immer die Fehlermeldung:
Laufzeitfehler 438
Objekt unterstützt diese Eigenschaft oder Methode nicht


UPDATE:
Habe jetzt ein bisschen rumexperimentiert und es scheint, dass es so jetzt läuft:
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Intersect(Target, Range("K18:K375")) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    If Target = "X" Then
    Target = ""
    Else
    Target = "X"
    End If
End Sub
Du solltest Fehler über eine OnError Anweisung abfangen.



https://docs.microsoft.com/de-de/office/...-statement

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
on Error goto ErrHandler
    If Intersect(Target, Range("K18:K375")) Is Nothing Then Exit Sub
    If Target = "X" Then
    Target = ""
    Else
    Target = "X"
    End If
ErrHandler:
Resume next
End Sub
Zitat:
Code:
If Target.Coun > 1 Then Exit Sub
Hallo zusammen,


ist euch aufgefallen, dass hier nur ein Buchstabe zu fehlen scheint? Es soll bestimmt
Code:
If Target.Count > 1 Then Exit Sub
heißen
Marcus
Zitat:
Zitat: schrieb:Code:
Code:
If Target.Coun > 1 Then Exit Sub
Hallo zusammen,


ist euch aufgefallen, dass hier nur ein Buchstabe zu fehlen scheint? Es soll bestimmt
Code:
Code:
If Target.Count > 1 Then Exit Sub
heißen
Marcus



Hi, ja das stimmt. Das war also das Problem. Als ich rumexperimentiert habe, hatte ich auch nach anderen Codes im Internet gesucht und dann ohne Absicht, den richtigen Code mit "t" (Count) am Ende kopiert und bei mir eingefügt.

Aufjedenfall funktioniert jetzt alles.

Danke