Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeile ausblenden wenn #NV

Zeile ausblenden wenn #NV
Franz
Hallo zusammen,
nutze folgendes Makro zum Ausblenden von Zeilen, wenn die Zelle in Spalte A leer ist. Nun habe ich aber aufgrund einer Auswertung auch Zelleneinträge mit #NV. Und da streikt das Makro. Wie kann ich diese Zeilen ausblenden oder anderer Weg - wie bekomme ich per VBA die Zellen mit #NV geleert, so dass das Makro wieder funktioniert.
Danke für Eure Hilfe!
Grüße Grüße
Franz Kupfer
Private Sub ausblenden_leere_zeilen()
Dim Zeile As Integer
Dim zeilemax As Integer
With ActiveSheet
zeilemax = .Range("A65000").End(xlUp).Row
For Zeile = 1 To zeilemax
If .Cells(Zeile, 1).Value = "" Then
.Rows(Zeile).Hidden = True
End If
Next Zeile
End With
End Sub

Anzeige

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

Betreff
Benutzer
Anzeige
AW: Zeile ausblenden wenn #NV
07.01.2011 16:07:12
Matthias
Hallo Franz
Zitat aus der Hilfe:
Der Fehlerwert #NV wird angezeigt, wenn ein Wert in einer Funktion oder Formel nicht verfügbar ist
Sorge also dafür, das Du diesen Fehler bereits in den Formeln abfängst.
Nach dem Motto:
Wenn(Istfehler(DeineFormel);"";DeineFormel)
Gruß Matthias
Anzeige
AW: Zeile ausblenden wenn #NV
07.01.2011 19:04:38
Franz
Hallo Matthias,
das Problem ist, dass mir die Daten so geliefert werden. Ich habe nur Werte, aber keine Formeln.
Daher dachte ich, dass man irgendwie diesen Wert #NV "killen" kann....
Viele Grüße
Franz Kupfer
AW: Zeile ausblenden wenn #NV
07.01.2011 19:12:01
Josef

Hallo Franz,
so?
Private Sub ausblenden_leere_zeilen()
  Dim rngHide As Range
  Dim zeilemax As Integer
  
  With ActiveSheet
    .Rows.Hidden = False
    zeilemax = .Range("A65000").End(xlUp).Row
    On Error Resume Next
    Set rngHide = Range("A1:A" & zeilemax).SpecialCells(xlCellTypeBlanks)
    Set rngHide = Union(rngHide, Range("A1:A" & zeilemax).SpecialCells(xlCellTypeConstants, xlErrors))
    On Error GoTo 0
    If Not rngHide Is Nothing Then rngHide.EntireRow.Hidden = True
  End With
End Sub


Gruß Sepp

Anzeige
ersetze #NV durch nichts
07.01.2011 19:20:21
Matthias
Hallo
Zitat:
Ich habe nur Werte, aber keine Formeln.
Dann kannst Du doch vorher manuell Suchen-Ersetzen benutzen
*alle Zellen markieren
*Suchen nach: #NV
*Ersetzen durch: nichts (also leer lassen)
und Deinen Code erst dannach ausführen.
Gruß Matthias
Anzeige
Vielen Dank für Eure Hilfe - @ Sepp:
07.01.2011 19:31:20
Franz
das klappt bestens!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zeile ausblenden, wenn #NV


Schritt-für-Schritt-Anleitung

Um Zeilen in Excel auszublenden, wenn der Zelleninhalt #NV ist, kannst Du ein VBA-Makro nutzen. Hier ist eine Schritt-für-Schritt-Anleitung:

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

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Private Sub ausblenden_nv_zeilen()
       Dim rngHide As Range
       Dim zeilemax As Integer
       With ActiveSheet
           .Rows.Hidden = False
           zeilemax = .Range("A65000").End(xlUp).Row
           On Error Resume Next
           Set rngHide = Range("A1:A" & zeilemax).SpecialCells(xlCellTypeConstants, xlErrors)
           On Error GoTo 0
           If Not rngHide Is Nothing Then rngHide.EntireRow.Hidden = True
       End With
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

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

Dieses Makro blendet alle Zeilen aus, die in Spalte A den Fehler #NV haben.


Häufige Fehler und Lösungen

  • Problem: Das Makro funktioniert nicht, weil die Zellen keine Formeln haben.

    • Lösung: Stelle sicher, dass der Zelleninhalt tatsächlich #NV ist. Du kannst auch manuell Suchen und Ersetzen verwenden, um #NV durch nichts zu ersetzen.
  • Problem: Es werden nicht alle Zeilen mit #NV ausgeblendet.

    • Lösung: Überprüfe, ob Du den richtigen Bereich in der Zeile definiert hast. Der Code sollte auf die korrekte Spalte und den richtigen Bereich zeigen.

Alternative Methoden

Wenn Du kein VBA verwenden möchtest, kannst Du auch die Funktion WENN in Excel nutzen:

  • Markiere die Zellen, in denen Du #NV ausblenden möchtest.
  • Verwende die folgende Formel in einer neuen Spalte:

    =WENN(ISTFEHLER(A1);"";A1)

Diese Formel ersetzt #NV durch eine leere Zelle. Du kannst die Ergebnisse dann kopieren und die Originaldaten ersetzen.


Praktische Beispiele

Hier ist ein Beispiel, wie Du mit dem Makro arbeiten kannst:

  1. Angenommen, Du hast in Spalte A einige Werte, darunter auch #NV.
  2. Führe das oben beschriebene Makro aus.
  3. Nach der Ausführung werden alle Zeilen mit #NV ausgeblendet, sodass Du nur die relevanten Daten siehst.

Tipps für Profis

  • Wenn Du oft mit #NV arbeiten musst, kannst Du das Makro in Deine Symbolleiste für den Schnellzugriff hinzufügen, um es schneller auszuführen.
  • Experimentiere mit der WENN-Funktion, um andere Fehler wie #DIV/0! oder #WERT! ebenfalls auszublenden.
  • Denke daran, regelmäßig Deine Daten zu überprüfen, um sicherzustellen, dass keine neuen #NV-Fehler entstehen.

FAQ: Häufige Fragen

1. Wie kann ich #NV in Excel ausblenden, ohne VBA zu verwenden?
Du kannst die WENN-Funktion verwenden, um #NV durch nichts zu ersetzen.

2. Was passiert, wenn ich die Zeilen mit #NV ausblende?
Die Daten werden nicht gelöscht, sie sind nur vorübergehend nicht sichtbar. Du kannst die Zeilen jederzeit wieder einblenden.

3. Funktioniert das Makro in jeder Excel-Version?
Das VBA-Makro sollte in Excel 2010 und späteren Versionen problemlos funktionieren. Überprüfe, ob Makros in Deinen Excel-Einstellungen aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige