Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1176to1180
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

VBA - Empty

VBA - Empty
Charly
Guten Morgen
Ich möchte alle Zellen der aktiven Tabelle die Null oder "" enthalten wirklich Leer machen.
Formeln sollten erhalten bleiben.
Danke
Gruss Charly

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: VBA - Empty
25.09.2010 09:38:26
JogyB
Hallo Charly,
Sub Leeren()
Dim zeLLe As Range
Application.ScreenUpdating = False
For Each zeLLe In ActiveSheet.UsedRange
If zeLLe.Formula = 0 Or zeLLe.Formula = "" Then
zeLLe.ClearContents
End If
Next
Application.ScreenUpdating = True
End Sub

Wobei das = "" meines Wissens unnötig ist, da die Zelle dann eh schon leer ist (ein Formelergebnis kann es hier ja nicht sein).
Gruß, Jogy
oder bei vielen Zellen etwas schneller so
25.09.2010 09:41:37
JogyB

Sub Leeren()
Dim zeLLe As Range
Dim loeschRng As Range
For Each zeLLe In ActiveSheet.UsedRange
If zeLLe.Formula = 0 Or zeLLe.Formula = "" Then
If loeschRng Is Nothing Then
Set loeschRng = zeLLe
Else
Set loeschRng = Union(loeschRng, zeLLe)
End If
End If
Next
If Not loeschRng Is Nothing Then loeschRng.ClearContents
End Sub
Gruß, Jogy
Anzeige
Probleme
25.09.2010 09:58:43
Charly
Hi Jogy
Bei beiden Codes Probleme mit verbundenen Zellen.
Hast du noch ne Idee?
Gruss Charly
AW: Probleme
25.09.2010 10:19:58
JogyB
Hallo Charly,
dann eben so:
Sub Leeren()
Dim zeLLe As Range
Dim loeschRng As Range
For Each zeLLe In ActiveSheet.UsedRange
If zeLLe.Formula = 0 Or zeLLe.Formula = "" And zeLLe Is zeLLe.MergeArea.Cells(1, 1) Then
If loeschRng Is Nothing Then
Set loeschRng = zeLLe.MergeArea
Else
Set loeschRng = Union(loeschRng, zeLLe.MergeArea)
End If
End If
Next
If Not loeschRng Is Nothing Then loeschRng.ClearContents
End Sub

Da wird jetzt immer der komplette verbundene Bereich gesammelt, die Überprüfung läuft aber nur für die erste Zelle des verbundenen Bereich (nur bei der bekommt man den korrekten Inhalt).
Gruß, Jogy
Anzeige
Genau so...
25.09.2010 10:30:16
Charly
... sollte es laufen
Danke nochmal Jogy
Gruss Charly
Danke Jogy
25.09.2010 09:45:18
Charly
Hi Jogy
Blitzantwort
Dankeschön
Formelergebnis könnte es doch sein wenn zB.
=wenn(a1=irgendwas;"";sonst..
Schönes Wochenende
Gruss Charly

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige