Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
844to848
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
844to848
844to848
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spalte löschen wenn leer

Spalte löschen wenn leer
16.02.2007 12:44:00
lufrio1
Guten Morgen,
kann mir jemand helfen?
Ich möchte ein Makro aufzeichen, und dort 2 Prüfkriterien einbauen:
1. benutzerdefinierten Filter: wie kann ich aufschreiben:
Filter größer als Range("B5") und kleiner als Range(B6)
2. Wie schreibe ich die Bedinung auf: wenn A4:A60 = "", dann lösche die Spalte, sonst gehen eine Spalte nach rechts
Vielen Dank im voraus. Ich freue mich auf Eure Hilfe
Lufrio

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalte löschen wenn leer
18.02.2007 17:19:00
fcs
Hallo lufrio,
hier zwei Beispiele wie du deine beiden Probleme lösen kannst.
Die Filter-Lösung funktioniert evtl. nicht wenn in den Zellen B5 und B6 Datumsangaben sind, dann muss man noch etwas mehr machen.
Gruss
Franz
Sub FilterSetzen()
' FilterSetzen Makro
'Falls in B5 und B6 Zahlen oder Texte stehen dann
Selection.AutoFilter Field:=1, Criteria1:=">" & Worksheets("Tab1").Range("B5"), Operator:=xlAnd, _
Criteria2:="<" & Worksheets("Tab1").Range("B6")
'Falls in B5 und B6 Datumsangaben stehen dann
Selection.AutoFilter Field:=1, Criteria1:=">" & CDbl(Worksheets("Tab1").Range("B5")), Operator:=xlAnd, _
Criteria2:="<" & CDbl(Worksheets("Tab1").Range("B6"))
End Sub
Sub A4A60_pruefen()
Dim wks As Worksheet, Bereich As Range
Set wks = ActiveSheet
Set Bereich = wks.Range("A4:A60")
'Prüfen ob im Bereich Inhalte vorhanden sind
If Application.WorksheetFunction.CountA(Bereich) = 0 Then
'oder falls in den Zellen auf Leerstrings ("") geprüft werden soll
'If Application.WorksheetFunction.CountIf(Bereich, "") = Bereich.Rows.Count Then
wks.Columns(Bereich.Column).Delete
Else
Bereich.Offset(0, 1).Select 'selektiert den Bereich B4:B60
'oder
'Bereich.Offset(0, 1).Cells(1, 1).Select ' Selektiert Zelle B4
End If
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige