Microsoft Excel

Herbers Excel/VBA-Archiv

Über Makros aussortieren

Betrifft: Über Makros aussortieren von: Markus Brunner
Geschrieben am: 12.10.2007 09:02:13

Wie kann ich über ein makro gezielt Zeilen aus einer Liste die eine Bedingung erfüllen ausblenden.
Z.B.
Rechnung vom 01.10.07 bezahlt
Rechnung vom 03.10.07 bezahlt
Rechnung vom 04.10.07 nicht bezahlt
Rechnung vom 08.10.07 bezahlt
Rechnung vom 10.10.07 nicht bezahlt

und jetzt alles "bezahlte" ausblenden, ansonsten wir die Liste ewig lang!
Gruß Markus

  

Betrifft: AW: Über Makros aussortieren von: Hajo_Zi
Geschrieben am: 12.10.2007 09:15:18

Hasllo Markus,

das geht ohne Makro mit Autofilter.

GrußformelHomepage


  

Betrifft: AW: Über Makros aussortieren von: serge
Geschrieben am: 12.10.2007 09:25:37

Hallo Markus
steht bezahlt in einer Zelle oder so wie dein Beispiel im Satz?
Serge


  

Betrifft: AW: Über Makros aussortieren von: Chaos
Geschrieben am: 12.10.2007 09:26:32

Servus,

per Makro so:

Sub tt()
Dim letzte As Long, zeile As Long
If Range("A65536") <> "" Then
   letzte = 65536
Else
   letzte = Range("A65536").End(xlUp).Row
End If
For zeile = 1 To letzte
   If Right(Cells(zeile, 1).Value, 13) = "nicht bezahlt" Then
      Cells(zeile, 1).EntireRow.Hidden = True
   Else
      Cells(zeile, 1).EntireRow.Hidden = False
   End If
Next zeile
End Sub



Ich geh davon aus, dass der Text in Spalte A so lautet: "Rechnung vom 04.10.07 nicht bezahlt"

Gruß

Chaos


  

Betrifft: AW: Oder so von: Chaos
Geschrieben am: 12.10.2007 09:34:10

Sub ttaus1()
Dim letzte As Long, zeile As Long
If Range("A65536") <> "" Then
   letzte = 65536
Else
   letzte = Range("A65536").End(xlUp).Row
End If
For zeile = 1 To letzte
   If Cells(zeile, 1).Value Like "*nicht bezahlt*" Then
      Cells(zeile, 1).EntireRow.Hidden = True
   Else
      Cells(zeile, 1).EntireRow.Hidden = False
   End If
Next zeile
End Sub



Dann kannst du vorne und hinten dran noch Text stehen haben.

Gruß

Chaos


  

Betrifft: AW: Oder so von: Markus Brunner
Geschrieben am: 12.10.2007 09:42:20

Autofilter geht nicht, es gibt mehrere variablen, nicht nur "bezahlt" und "nicht bezahlt".
Ich will aber eine Variable gezielt aussortieren.
Es sind 2 Spalten:
Spalte 1: Rechnung vom ...
Spatle 2: bezahlt, nicht bezahlt, offen,...

Geht da mi den Makros die Ihr mir beschrieben habt?
Gruß Markus


  

Betrifft: AW: Oder so von: Chaos
Geschrieben am: 12.10.2007 10:20:13

Servus,

das Makro blendet die Zeilen mit "nicht bezahlt" aus.

was willst du jetzt genau?

gruß

chaos


  

Betrifft: AW: Oder so von: Chaos
Geschrieben am: 12.10.2007 10:23:42

so werden die bezahlten und offenen ausgeblendet:

Sub ttaus1()
 Dim letzte As Long, zeile As Long
 If Range("A65536") <> "" Then
    letzte = 65536
 Else
    letzte = Range("A65536").End(xlUp).Row
 End If
 For zeile = 1 To letzte
    If Cells(zeile, 1).Value Like "*nicht bezahlt*" Then
       Cells(zeile, 1).EntireRow.Hidden = False
    Else
       Cells(zeile, 1).EntireRow.Hidden = True
    End If
 Next zeile
 End Sub



Ich hab die Trues und Falses verwechselt.

gruß

Chaos


  

Betrifft: AW: Oder so von: Daniel
Geschrieben am: 12.10.2007 22:39:08

HI
dann füge doch eine Hilfsspalte ein, mit einer Formel, die einen Wert 1 zurückgibt, für Zeilen, die ausgeblendet werden sollen und einen Wert 2 für Zeilen, die Sichtbar bleiben sollen.
auf diese Hilfsspalte wendest du dann den Autofilter an.
durch die Formeln kannst du Bedingungen in beliebiger Kompexität verwirklichen und bist immer schneller als die hier vorgesschlagenen Makros.

Gruß, Daniel


 

Beiträge aus den Excel-Beispielen zum Thema "Über Makros aussortieren"