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

#NV ersetzen durch ""

Forumthread: #NV ersetzen durch ""

#NV ersetzen durch ""
08.02.2009 12:25:20
Franz
Hallo Excellisten,
Trotz Archiv-Hilfe komme ich damit nicht weiter:

Sub Ersetze_dies_durch_das()
Dim MyRange As Range
Dim Cell As Range
'Application.ScreenUpdating = False
Set MyRange = Selection
For Each Cell In MyRange
Selection.Replace What:="#NV", Replacement:="TEST", LookAt:=xlWhole, MatchCase:=True
Selection.Replace What:="0", Replacement:="NIX", LookAt:=xlWhole, MatchCase:=True
Next Cell
End Sub


Die Nuller verschwinden, das "#NV" leider nicht. Ich vermute es liegt an dem "LookAt". Wer kann mir helfen?
mfg
Franz D.

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Fehlerwerte im Code - VBA spricht Englisch!
08.02.2009 12:30:44
Beate
Hallo,
ersetze #NV durch #N/A
Guckst Du: Excel Fehlerwerte in VBA
Gruß,
Beate
AW: Fehlerwerte im Code - VBA spricht Englisch!
08.02.2009 12:37:26
Franz
Hallo Beate,
Ich habe gerade deine Website in meinen Favoriten geparkt.
Herzlichen Dank für die schnelle Hilfe.
Tschüss!
Franz D.
Anzeige
VBA #NV ersetzen durch "Test"
08.02.2009 14:31:45
NoNet
Hallo Franz,
mit diesem Code kannst Du alle #NV durch "Test" ersetzen - und zwar auch die #NV, die manuell eingegeben wurden !
VBA-Code:
 Sub Ersetze_dies_durch_das2()
    Dim rngZelle As Range
    Selection.Replace What:="0", Replacement:="NIX", LookAt:=xlWhole, MatchCase:=True
    Set rngZelle = Selection.Find(What:="#N/A", LookIn:=xlValues)
    While Not rngZelle Is Nothing
        rngZelle.Value = "TEST"
        Set rngZelle = Selection.FindNext
    Wend
    Set rngZelle = Nothing
 End Sub
Gruß, NoNet
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

NV in Excel ersetzen: So geht's!


Schritt-für-Schritt-Anleitung

Um in Excel die Fehlerwerte wie #NV durch einen anderen Wert zu ersetzen, kannst du sowohl die manuelle Suche und Ersetzen-Funktion als auch VBA verwenden. Hier ist eine Schritt-für-Schritt-Anleitung zur Verwendung von VBA:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code ein:

    Sub Ersetze_NV()
       Dim MyRange As Range
       Set MyRange = Selection
       MyRange.Replace What:="#NV", Replacement:="NEUER WERT", LookAt:=xlWhole
    End Sub
  4. Ändere NEUER WERT in den gewünschten Wert, den du anstelle von #NV verwenden möchtest.

  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Wähle die Zellen aus, in denen du #NV ersetzen möchtest.

  7. Drücke ALT + F8, wähle Ersetze_NV und klicke auf Ausführen.

Mit diesem Verfahren kannst du #NV effizient durch den gewünschten Wert ersetzen.


Häufige Fehler und Lösungen

  • Problem: #NV wird nicht ersetzt.

    • Lösung: Stelle sicher, dass du die richtige Schreibweise verwendest und dass LookAt:=xlWhole korrekt gesetzt ist.
  • Problem: VBA-Code gibt eine Fehlermeldung aus.

    • Lösung: Überprüfe den Code auf Syntaxfehler. Achte darauf, dass du keine nicht unterstützten Zeichen verwendest.
  • Problem: Der Wert wird nicht aktualisiert.

    • Lösung: Vergewissere dich, dass die Zelle nicht gesperrt oder geschützt ist.

Alternative Methoden

Du kannst auch die integrierte Excel-Funktion Suchen und Ersetzen verwenden:

  1. Markiere den Bereich, der durchsucht werden soll.
  2. Drücke STRG + H, um das Dialogfeld „Suchen und Ersetzen“ zu öffnen.
  3. Gib #NV in das Feld „Suchen nach“ ein.
  4. Gib den gewünschten Ersatzwert in das Feld „Ersetzen durch“ ein.
  5. Klicke auf „Alle ersetzen“.

Diese Methode ist besonders nützlich, wenn du keine VBA-Kenntnisse hast.


Praktische Beispiele

Hier sind einige Beispiele, wie du #NV in Excel ersetzen kannst:

  • Beispiel 1: Ersetze #NV durch einen leeren Text:

    MyRange.Replace What:="#NV", Replacement:="", LookAt:=xlWhole
  • Beispiel 2: Ersetze #NV durch die Zahl 0:

    MyRange.Replace What:="#NV", Replacement:="0", LookAt:=xlWhole
  • Beispiel 3: Ersetze #NV durch einen spezifischen Text, z.B. „Nicht verfügbar“:

    MyRange.Replace What:="#NV", Replacement:="Nicht verfügbar", LookAt:=xlWhole

Tipps für Profis

  1. Nutze die Application.ScreenUpdating = False-Anweisung, um die Performance beim Ersetzen großer Datenmengen zu verbessern.
  2. Verwende MatchCase:=False, wenn die Groß-/Kleinschreibung beim Ersetzen keine Rolle spielt.
  3. Teste deinen VBA-Code immer in einer Kopie deiner Arbeitsmappe, um Datenverlust zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich #NV durch 0 ersetzen? Du kannst den VBA-Code anpassen, indem du Replacement:="0" verwendest.

2. Was ist der Unterschied zwischen LookAt:=xlWhole und LookAt:=xlPart? xlWhole ersetzt nur ganze Zellen, die genau mit dem Suchbegriff übereinstimmen, während xlPart auch Zellen ersetzt, die teilweise den Suchbegriff enthalten.

3. Funktioniert das auch in Excel Online? Leider sind VBA-Skripte in Excel Online nicht verfügbar. Du musst die Desktop-Version von Excel verwenden.

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