Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1512to1516
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
Inhaltsverzeichnis

Laufzeitfehler 13 - Typen unverträglich....Warum?

Laufzeitfehler 13 - Typen unverträglich....Warum?
22.09.2016 09:25:48
Harald
Hallo,
jetzt muss ich Euch leider nochmal nerven...
Ich habe folgendes Problem:
Ich habe in der Spalte O eine Formel hinterlegt, die prüft, ob eingetragene Uhrzeiten in Spalte D größer als 12:00 Uhr sind und ob in der Spalte R für die jeweilige Zeile ein X eingetragen ist. Ist die Zeit größer als 12:00 Uhr und es ist ein X eingetragen, soll O den Wert 1 ausgeben, sonst 0 sein.
=WENN(UND(R12="X";D12>12/24);1;0)
Wenn der Wert 1 zurückgegeben wird, möchte ich eine Msg-Box anzeigen lassen, die auf den Fehler hinweist.
Mein Makro dazu:
Private Sub Worksheet_Calculate()
If Range("O12:O42").Value > 0 Then
MsgBox "Sie arbeiten am Faschingsdienstag bzw. am Kirchweihdienstag länger als 12.00 Uhr!",  _
vbCritical
End If
End Sub
Ich bekomme aber immer einen Laufzeitfehler 13 - Typen unverträglich zurück. Woran kann das liegen?
Herzlichen Dank im Voraus für die Antworten!
Viele Grüße
harald

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Laufzeitfehler 13 - Typen unverträglich....Warum?
22.09.2016 09:51:19
Michael
Hi,
das liegt daran, daß Range("O12:O42") 30 Werte sind, die Du mit nur EINEM Wert vergleichst.
Vermutlich bremst Du Excel mit dem Worksheet_Calculate aus, weil das bei JEDER Berechnung ausgeführt wird. Ich fände es geschickter, die Zellen R12:R42 bzw. D12:D42 bei der EINGABE abzufragen.
Schöne Grüße,
Michael
AW: Laufzeitfehler 13 - Typen unverträglich....
22.09.2016 09:56:49
Daniel
Hi
der Fehler kommt, weil der Vergleich mit > versucht, zwei Einzelwerte miteinander zu vergleichen.
dein Range("O12:O42").Value ist aber kein Einzelwert, sondern eine Gruppe (Array) mit 31 Einzelwerten, und diese Gruppe kannst du nicht mit einem Einzelwert vergleichen, daher der Fehler.
Du könntest hier aber mit ZählenWenn ermitteln, wie oft die genannte Bedingung im Bereich erfüllt ist und dann entsprechend reagieren:
IF Worksheetfunction.CountIf(Range("O12:O42"), ">0") > 0 Then
Gruß Daniel
Anzeige
AW: Laufzeitfehler 13 - Typen unverträglich....
22.09.2016 10:05:15
Harald
Hallo! Ganz herzlichen Dank für Eure Hilfe!
AW: Laufzeitfehler 13 - Typen unverträglich....
22.09.2016 10:37:16
Harald
Hallo Daniel!
Jetzt habe ich das Problem, dass er mir die Meldung immer anzeigt wenn ich irgendetwas eingebe...
Gruß
Harald
AW: Laufzeitfehler 13 - Typen unverträglich....
22.09.2016 11:05:33
Daniel
Hi
dann ändere die Bedingung entsprechend ab.
mehr kann ich dir jetzt auch nicht sagen, weil ich nicht weiß, was du dort eingibst und wann die Meldung angezeigt werden soll.
Gruß Daniel

74 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige