Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
808to812
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
808to812
808to812
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Laufzeitfehler "13" / Typen unverträglich

Laufzeitfehler "13" / Typen unverträglich
10.10.2006 11:17:34
Thomas
Hallo,
Folgendes Problem:
In einem Sheet ist Folgender Code hinterlegt:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
If Not Intersect(Target, Range("M17:M999")) Is Nothing Then
If LCase(Target) = "ok" Then
Target.Offset(0, -7).ClearContents
Target.Offset(0, -1) = "Erledigt"
Else
If LCase(Target) = "nok" Then
Target.Offset(0, -7).ClearContents
Target.Offset(0, -1) = "Retoure"
End If
End If
End If
End Sub

Wird nun ein Bereich markiert (B17:M17) und der inhalt gelöscht, bzw werden mehere Zeilen Inhalte eingefügt kommt Laufzeitfehler "13" Typen Unverträglich.
Wie kann ich bei solchen Aktionen den Laufzeitfehler umgehen?
Danke für eure Hilfe
Tom

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler "13" / Typen unverträglich
10.10.2006 11:37:43
Harald
Hallo Tom,
quick'n'dirty;-)
If Not Intersect(Target, Range("M17:M999")) Is Nothing And Target.Count = 1 Then
Gruss Harald
AW: Laufzeitfehler "13" / Typen unverträglich
10.10.2006 11:49:23
fcs
Hallo Tom,
das Problem ist, dass LCase immer nur den Inhalt einer Zelle verarbeiten kann. Sind mehrere Zellen markiert, dann kommt der Laufzeitfehler.
Eine Möglichkeit hat Harald schon gezeigt. Hier muss du in Spalte M jedoch immer jede Zelle einzeln ändern.
Folgende Variante ermöglicht das gleichzeitige Ändern mehrerer Zellen in der Spalte M. z.B. durch Kopieren oder Ziehen mit der Maus.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
If Target.Column = 13 And Target.Row >= 17 And Target.Columns.Count = 1 Then
For Each rng In Target
If LCase(rng) = "ok" Then
rng.Offset(0, -7).ClearContents
rng.Offset(0, -1) = "Erledigt"
Else
If LCase(rng) = "nok" Then
rng.Offset(0, -7).ClearContents
rng.Offset(0, -1) = "Retoure"
End If
End If
Next rng
End If
End Sub

Gruß
Franz
Anzeige
AW: Laufzeitfehler "13" / Typen unverträglich
10.10.2006 11:55:45
Thomas
Na das ging ja fix *freu*
Klappt wunderbar, Danke euch beiden für die Hilfe
grüsse Tom

146 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige