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

Zeilen ausblenden mit Bedingung

Zeilen ausblenden mit Bedingung
23.05.2005 12:30:34
Torsten
Hallo beisammen,
mit folgendem Code versuche ich vor dem Ausdrucken des WS die Zeilen auszublenden, die in Spalte "D" eine Null stehen haben:
Private Sub cmb_PRINTBB_Click()
Dim i As Long
If MsgBox("Möchten Sie den Buchungsbeleg jetzt ausdrucken?", vbYesNo) = vbYes Then

With Sheets("BB")
.Visible = True
.Select
End With

Sheets("BB").Activate
For i = 1 To ActiveSheet.UsedRange.Rows.Count
Range("D" & i).Select
If ActiveCell.Value = 0 Then
ActiveCell.EntireRow.Hidden = True
Else
End If
Next i

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
.......
Leider bricht mir Excel an der Stelle "Range("D" & i).Select" ab, mit der Meldung, die Select-Methode konnte nicht ausgeführt werden.
Könnt Ihr mir auf die Sprünge helfen?
Vielen Dank im voraus.
Gruß
Torsten

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Range("D:" & i).Select (oT)
23.05.2005 12:41:24
Dr.
.
@Dr.: Unsinn!
23.05.2005 12:50:57
u_
Hallo,
Range("D:1")?
Gruß
Geist ist geil!
AW: @Dr.: Unsinn!
23.05.2005 13:03:12
Dr.
Das ist natürlich völliger Blödsinn. Mea culpa.
AW: Zeilen ausblenden mit Bedingung
23.05.2005 12:49:13
u_
Hallo,
das Select ist unnötig!
With Sheets("BB")
For i = 1 To .UsedRange.Rows.Count
.Rows(i).Hidden = .cells(i,4).value=0
Next i
.printout
end with
Gruß
Geist ist geil!
AW: Zeilen ausblenden mit Bedingung
23.05.2005 12:49:32
Hajo_Zi
Hallo Torsten,
auf select kann in VBA zu 99% verzichtet werden.
Option Explicit

Private Sub cmb_PRINTBB_Click()
Dim i As Long
If MsgBox("Möchten Sie den Buchungsbeleg jetzt ausdrucken?", vbYesNo) = vbYes Then
Sheets("BB").Visible = True
With Sheets("BB")
For i = 1 To .UsedRange.SpecialCells(xlCellTypeLastCell).Row
Rows(i).EntireRow.Hidden = Cells(i, 4) = 0
Next i
End With
End If
End Sub

Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem Windows 2000 SP4 und Excel Version 2000 SP3.


Anzeige
AW: Zeilen ausblenden mit Bedingung
23.05.2005 14:00:05
Torsten
Hallo Hajo,
vielen Dank für Deine Rückmeldung.
Ich habe haber leider immer noch 2 Probleme:
1. Die entsprechenden Zeilen, die auf den Wert 0 geprüft werden, werden nicht ausgeblendet. Kann das an der Summewenn-Formel liegen, die in der Spalte "D" einen Wert ausgeben soll? Wenn ja, wie sieht dann die Lösung aus?
2. Wie muß die Zeile
For i = 1 To .UsedRange.SpecialCells(xlCellTypeLastCell).Row
Rows(i).EntireRow.Hidden = Cells(i, 4) = "0"
aussehen, wenn ich die ausgeblendeten Zeilen nach dem Ausdrucken wieder einblenden möchte?
Wäre nett, wenn Du mir hier weiterhelfen könntest.
Gruß
Torsten
Anzeige
AW: Zeilen ausblenden mit Bedingung
23.05.2005 14:18:04
u_
Hallo,
1. Das sollte egal sein, woher der Wert kommt. Hauptsache er ist wirklich 0.
2. Sheets("BB").cells.entirerow.hidden=false
Gruß
Geist ist geil!
AW: Zeilen ausblenden mit Bedingung
23.05.2005 14:34:20
Torsten
Hallo u_,
vielen Dank für Deine Rückmeldung.
Trotz des Wechsels auf das WS("BB") führt Excel das Ausblenden der Zeilen im WS("REPORT")aus (von dem aus der Code gestartet wird), anstatt im WS("BB"). Hast Du dafür eine Erlärung?
Private Sub cmb_PRINTBB_Click()
Dim i As Long

If MsgBox("Möchten Sie den Buchungsbeleg jetzt ausdrucken?", vbYesNo) = vbYes Then
Sheets("BB").Visible = True
With Sheets("BB")
For i = 1 To .UsedRange.SpecialCells(xlCellTypeLastCell).Row
Rows(i).EntireRow.Hidden = Cells(i, 4) = 0
Next i
End With
Sheets("BB").PrintOut Copies:=1, Collate:=True
End If
.....
Vielen Dank für Deine Geduld.
Gruß
Torsten
Anzeige
AW: Zeilen ausblenden mit Bedingung
23.05.2005 14:49:54
u_
Hallo,
manchmal sind es die kleinen Dinge. wie ein fehlender .
Private Sub cmb_PRINTBB_Click()
Dim i As Long
If MsgBox("Möchten Sie den Buchungsbeleg jetzt ausdrucken?", vbYesNo) = vbYes Then
Sheets("BB").Visible = True
With Sheets("BB")
For i = 1 To .UsedRange.SpecialCells(xlCellTypeLastCell).Row
.Rows(i).EntireRow.Hidden = .Cells(i, 4) = 0
Next i
End With
Sheets("BB").PrintOut Copies:=1, Collate:=True
End If
Gruß
Geist ist geil!
AW: Zeilen ausblenden mit Bedingung
23.05.2005 15:16:46
Torsten
Hallo u_,
sorry, es läuft noch nicht richtig.
Das WS("BB") wird zwar jetzt angesprochen, aber es werden in dem Sheet alle Zeilen ausgeblendet, und nicht nur die, die in Spalte "D" den Wert "0" ausweisen.
Ich habe die Datei jetzt mal hochgeladen. Vielleicht ist es für Dich dann leichter, den Fehler zu finden:
https://www.herber.de/bbs/user/23111.xls
Im WS("ENTER") soll der User seine Eingaben machen. Im WS("REPORT") werden die Daten der im WS("ENTER") getroffenen Monatsselektion ausgewiesen und im WS("BB") wird daraus dann der entsprechende Buchungsbeleg generiert.
Die Datei habe ich bearbeiten müssen, um sie hochladen zu können.
Vielen Dank für Deine Mühe.
Gruß
Torsten
Anzeige
AW: Frage an u_ noch offen oT
23.05.2005 16:42:46
Torsten
AW: Frage an u_ noch offen oT
23.05.2005 18:02:44
IngGi
Hallo Torsten,
versuchs mal mit dieser Änderung:
statt dieser Zeile:
.Rows(i).EntireRow.Hidden = Cells(i, 4) = 0
diese Zeile:
If Cells(i, 4) = 0 Then Cells(i, 4).EntireRow.Hidden = True
Gruß Ingolf
AW: Frage an u_ noch offen oT
24.05.2005 08:58:36
u_
Hallo,
du hast noch einen Punkt vergessen!
Das hier läuft bei mir einwandfrei.

Private Sub cmb_PRINTBB_Click()
Dim i As Long
Application.ScreenUpdating = False
If MsgBox("Möchten Sie den Buchungsbeleg jetzt ausdrucken?", vbYesNo) = vbYes Then
Sheets("BB").Visible = True
With Sheets("BB")
For i = 1 To .UsedRange.SpecialCells(xlCellTypeLastCell).Row
.Rows(i).EntireRow.Hidden = .Cells(i, 4) = 0
Next i
.Visible = True
.PrintOut Copies:=1, Collate:=True
.Cells.EntireRow.Hidden = False
.Visible = xlSheetVeryHidden
End With
End If
Application.ScreenUpdating = True
End Sub

Gruß
Geist ist geil!
Anzeige
AW: erledigt - mT
24.05.2005 09:44:53
Torsten
Hallo u_,
jetzt läuft der Code auch bei mir. :-)
Vielen Dank für Deine Hilfe und Geduld.
Gruß
Torsten
AW: Zeilen ausblenden mit Bedingung
23.05.2005 14:20:50
Hajo_Zi
Hallo Torsten,
ich habe den Code getestet und er lief, also liegt es an Deiner Datei. Vielleicht solltest Du mal ein Beispiel hochladen.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Zeilen ausblenden mit Bedingung
23.05.2005 16:21:52
WolleKa
Hallo Torsten,
ich hoffe, ich bin noch nicht zu spät. Du hast ja schon einige Anregungen bekommen.
Hier meine beiden Mini-Makros zum Öffnen und Verbergen von Zeilen. In Spalte J steht eine o oder 1, je nachdem ob eine Abfrage bzw. Werte wahr oder falsch ist/sind.
' Zeile_verbergen Makro
' Makro am 28.07.04 von Karius aufgezeichnet
'
'
Sheets("ZuG").Select
ActiveSheet.Unprotect
For I = 20 To 100
Range("J" & I).Select
zellinhalt = ActiveCell.Text
If zellinhalt = "0" Then
Selection.EntireRow.Hidden = True
End If
Next
ActiveSheet.Protect
Range("A9").Select
End Sub

Private Sub Zeilen_Öffnen()
' Zeilen_Öffnen Makro
' Makro am 28.07.04 von Karius aufgezeichnet
Sheets("ZuG").Select
ActiveSheet.Unprotect
Rows("20:100").Select
Rows("20:100").EntireRow.AutoFit
Range("C1").Select
ActiveSheet.Protect
Sheets("Eingabe").Select
Range("A22").Select
End Sub

Gruß
WolleKa
Anzeige
AW: Zeilen ausblenden mit Bedingung
23.05.2005 16:39:27
Torsten
Hallo WolleKa,
vielen Dank für Deine Rückmeldung.
Aber der Code läuftbei mir nicht, da die Selection-Methode des Range-Objekts nicht ausgeführt werden konnte.
Gruß
Torsten
AW: erledigt - Vielen Dank allen für Ihre Beiträge
24.05.2005 09:47:48
Torsten

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige