Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Fehler abfangen #Zahl!

Fehler abfangen #Zahl!
13.10.2004 09:21:55
SteffenS
Guten morgen,
ich brauche mal bitte Eure Hilfe.
Ich setze in eine Zelle per Makro eine Formel ein.
Nun kann es sein das bei dieser Formel der Fehler:
#ZAHL!
rauskommt.
Eine Iserror Anweisung bringe ich in der Formel nicht mehr unter, dazu ist Sie zu lang!
Ich habe nun versucht mit
If ZGes.Cells(i, 4).FormulaR1C1 = "#ZAHL!" Then ZGes.Cells(i, 4).ClearContents
den Inhalt der Zelle zu löschen sobald der Fehler drin steht.
Leider funktioniert dies nicht.
Was muss ich tun damit der Inhalt der Zelle gelöscht wird sobald der Fehler
#ZAHL! drinsteht.
Vielen Dank schonmal
Steffen Schmerler
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler abfangen #Zahl!
dan
Hallo Steffen,
ich wuerde die VBA.VarType Funktion benutzen um feststellen zu koennen, was fuer ein Sub-Typ sich in der Value Eigenschafft der Zelle befindet. Ein Beispiel folgt. Gruss Dan, CZ.
Option Explicit

Sub FehlerTest()
Dim rngCelle As Range
Dim vntValue As Variant
Set rngCelle = ActiveCell
vntValue = rngCelle.Value
If (VBA.VarType(vntValue) = vbError) Then
MsgBox "Fehler in der Zelle : " & rngCelle.Text, vbCritical, "Fehler"
rngCelle.Value = ""
Else
MsgBox "Text in der Zelle : " & rngCelle.Text, vbInformation, "Info"
End If
End Sub

Anzeige
habe es mit Deiner Lösung hinbekommmen....
13.10.2004 12:04:01
SteffenS
danke vielmals
Steffen Schmerler
;
Anzeige
Anzeige

Infobox / Tutorial

Fehler abfangen #Zahl!


Schritt-für-Schritt-Anleitung

Um den Fehler #ZAHL! in Excel abzufangen, kannst du die folgende Schritt-für-Schritt-Anleitung verwenden:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Klicke auf Einfügen und dann auf Modul.
  3. Kopiere den folgenden VBA-Code in das Modul:

    Sub FehlerTest()
       Dim rngCelle As Range
       Dim vntValue As Variant
       Set rngCelle = ActiveCell
       vntValue = rngCelle.Value
    
       If (VBA.VarType(vntValue) = vbError) Then
           MsgBox "Fehler in der Zelle: " & rngCelle.Text, vbCritical, "Fehler"
           rngCelle.Value = ""
       Else
           MsgBox "Text in der Zelle: " & rngCelle.Text, vbInformation, "Info"
       End If
    End Sub
  4. Führe das Makro aus:

    • Wähle die Zelle aus, die den Fehler #ZAHL! enthält, und führe das Makro mit F5 aus.

Dieses Makro überprüft den Inhalt der ausgewählten Zelle und löscht sie, wenn ein Fehler erkannt wird.


Häufige Fehler und Lösungen

  • Problem: Das Makro löscht nicht den Zelleninhalt.

    • Lösung: Stelle sicher, dass du die Zelle ausgewählt hast, bevor du das Makro ausführst.
  • Problem: Der Fehler #ZAHL! wird nicht erkannt.

    • Lösung: Überprüfe, ob der Fehler tatsächlich in der Zelle vorhanden ist und ob du die korrekte Zelle ausgewählt hast.

Alternative Methoden

Wenn du den Fehler #ZAHL! in Excel ohne VBA abfangen möchtest, kannst du die IFERROR-Funktion nutzen:

=IFERROR(deine_formel, "")

Diese Formel gibt einen leeren String zurück, wenn ein Fehler auftritt. So kannst du den Fehler #ZAHL! effektiv ausblenden.


Praktische Beispiele

  1. Beispiel mit VBA:

    • Verwende das obige Makro FehlerTest, um alle Fehler in der aktiven Zelle zu erkennen und zu behandeln.
  2. Beispiel mit IFERROR:

    • Angenommen, du hast die Formel =A1/B1. Um den Fehler #ZAHL! abzufangen, schreibe:
      =IFERROR(A1/B1, "Wert nicht verfügbar")

Tipps für Profis

  • Nutze die IFERROR-Funktion, um Fehler direkt in Formeln zu behandeln, anstatt auf VBA zurückzugreifen.
  • Du kannst das Makro so anpassen, dass es auch andere Fehler wie #NV oder #WERT! behandelt, indem du die VarType-Überprüfung erweiterst.
  • Denke daran, die Fehlermeldungen benutzerfreundlich zu gestalten, um eine bessere Nutzererfahrung zu gewährleisten.

FAQ: Häufige Fragen

1. Was bedeutet der Fehler #ZAHL!?
Der Fehler #ZAHL! tritt auf, wenn Excel mit einer Zahl nicht umgehen kann, z. B. bei mathematischen Operationen, die ungültige Ergebnisse liefern.

2. Wie kann ich den Fehler #NV abfangen?
Du kannst die IFERROR-Funktion wie folgt verwenden:

=IFERROR(deine_formel, "Fehler")

Das ersetzt den Fehler durch die angegebene Nachricht.

3. Kann ich mehrere Fehler in einer Formel abfangen?
Ja, du kannst IFERROR oder ISERROR verwenden, um verschiedene Fehler zu behandeln und eine benutzerdefinierte Nachricht anzuzeigen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige