Microsoft Excel

Herbers Excel/VBA-Archiv

Laufzeitfehler typen unverträglich

Betrifft: Laufzeitfehler typen unverträglich von: Henry
Geschrieben am: 12.11.2014 08:40:35

Guten Morgen,

ich prüfe die spalte mittels vba

For Each Zelle In Bereich
    If Zelle = "" Then
    'nix unternehmen
    ElseIf Zelle = Date Then
    ...
In der Zelle wurde steht entweder ein Datum oder keins....
Das Datum wird durch eine Formel bzw. Zellbezug erzeugt.
Diese Formel hatte ich gestern angepasst und seitdem hängt der VBA bei der ausführung und markiert die Zeile
If Zelle = "" Then
als Typen unverträglich.

Vorherige Formel:
=WENN(ISTFEHLER(GANZZAHL(E332-'T'!C$14));"";GANZZAHL(E332-'T'!C$14))

Neue Formel:
=GANZZAHL(E332-'T'!C$14)+WENN(WOCHENTAG(E332-'T'!C$14;2)=6;2;WENN(WOCHENTAG(E332-'T'!C$14;2)=7;1;0))

Wenn kein Datum in der vorherigen Formel vorhanden war sah das Feld so aus:
########

jetzt mit der neuen Fromel steht #Zahl! und eben der Fehler typen unverträglich wenn ich das makro laufen lasse.

Kann mir jemand helfen das Problem zu lösen ?

Henry

  

Betrifft: AW: Laufzeitfehler typen unverträglich von: Hajo_Zi
Geschrieben am: 12.11.2014 08:46:44

Hallo Henry,

in de Zelle steht ein Fehler vorher prüfen IsError()

GrußformelHomepage


  

Betrifft: AW: Laufzeitfehler typen unverträglich von: Henry
Geschrieben am: 12.11.2014 09:07:00

Guten Morgen Hajo,

Danke.

Kann ich dann anstellen von If Zelle = ""then...

irgendwie die zellen mit fehler mittels vba auslassen ?

z.b. If Zelle.iserror then ...

Im VBA editor kennt er anscheinend leider iserror nicht.

Wenn ich es in der Formel einsetzte kriege ich leider nur Iserror Wahr / Falsch
und wenn ich definiere, dass wennfehler zutrifft er "" schreiben soll dann kommt der Fehler #Name
und schon hängt der VBA wieder


  

Betrifft: AW: Laufzeitfehler typen unverträglich von: Hajo_Zi
Geschrieben am: 12.11.2014 09:14:27

If Not Iserror(zelle) Then

Gruß Hajo


  

Betrifft: AW: Laufzeitfehler typen unverträglich von: Henry
Geschrieben am: 12.11.2014 09:18:19

Danke Hajo, jetzt läufts wieder....


  

Betrifft: AW: Laufzeitfehler typen unverträglich von: Martin
Geschrieben am: 12.11.2014 08:59:05

Hallo Henry,

ich bin mir nicht ganz sicher, ob du die Zelle auf ein enthaltenes Datum oder auf das heutige Datum kontrollieren möchtest. Wenn es dir nur darum geht zu prüfen, ob irgendein Datum in der Zelle steht, dann muss der Code so lauten:

ElseIf IsDate(Zelle) Then
Wenn du prüfen willst, ob es sich um das heutige Datum handelt, dann muss der Code so lauten:
If IsDate(Zelle) Then
    If Zelle = Date Then
    '...
    End If
End If
Ich verstehe nicht ganz weshalb du die Abfrage If Zelle = "" Then verwendest, wenn dann nichts passieren soll. Wird eine If-Abfrage nicht erfüllt, passiert doch automatisch nichts.

Viele Grüße

Martin


  

Betrifft: AW: Laufzeitfehler typen unverträglich von: Henry
Geschrieben am: 12.11.2014 09:10:49

Hallo Martin,

ich prüfe auf heutiges Datum.
Klaro hast du recht ich habe jetzt einfach mal so versucht

For Each Zelle In Bereich
If Zelle = Date Then...

aber auch da hängt er sich dann bei den Fehlerzellen auf :(


 

Beiträge aus den Excel-Beispielen zum Thema "Laufzeitfehler typen unverträglich"