PDA

Vollständige Version anzeigen : zeilen ausblenden wenn...


Mauro
24.02.2008, 19:40
hallo,
ich möchte in meinem excel sheet eine zeile ausblenden,
wenn in dieser zeile 2x die 0 vorkommt (in 2 verschiedenen spalten)

wie man eine zeile einfach ausblendet das weiss ich:
Selection.EntireRow.Hidden = True;

nur weiss ich leider nicht wie ich die IF-Bedingung für mein Problem erstelle

hoffe mir kann jemand weiter helfen

gruss,
mauro

jinx
24.02.2008, 20:23
<font size="2" face="Century Gothic">Moin, Mauro,

wenn keine Formeln drinstehen, die Werte in den Zellen prüfen gem. Tabellenfunktion ANZAHL2:
For lngCounter = 1 To 5
If WorksheetFunction.CountA(Range(Cells(lngCounter, 1), Cells(lngCounter, 3))) = 0 Then
Rows(lngCounter).EntireRow.Hidden = True
End If
Next lngCounter</font>

Mauro
28.02.2008, 18:08
hallo,
erst mal danke für die rasche antwort
hatte leider viel zu tun die letzten tage deshalb konnte ich noch nicht zurückschreiben.

also ich habe deinen code ausprobiert.
doch merkwürdigerweise blendet er die zeilen in denne 2 mal eine 0 (oder mehr)
vorkommt nicht aus.
er blendet eine zeile nur aus wenn gar nichts in dieser steht

lg mauro

ps: wenn in einer zeile 2 0en vorkommen kann es trotzdem sein das in dieser zeile
auch andere zahlen vorkommen --> die zeile sollte aber trotzdem ausgeblendet werden

jinx
28.02.2008, 18:16
<font size="2" face="Century Gothic">Moin, Mauro,,

mein Fehler (wer nicht lesen kann, sollte das Antworten lassen :() - nicht CountA (ANZAHL2), sondern CountIf verwenden (ZÄHLENWENN) und die Prüfung nicht auf 0, sondern auf 2 setzen...</font>

Mauro
01.03.2008, 16:49
hallo,

diese Zeile:

If WorksheetFunction.CountIf(Range(Cells(lngCounter, 1), Cells(lngCounter, 3))) = 2 Then

bringt bei mir leider diesen Fehler:
Argument ist nicht optional

Ich habe es auch so versucht:

If WorksheetFunction.CountIf(Range(Cells(lngCounter, 1)), Cells(lngCounter, 3)) = 2 Then

bringt aber diesen Fehler:
Laufzeitfehler '1004':
Die Methode 'Range' für das Objekt '_Global' ist fehlgeschlagen

mache ich was falsch?

gruss,
mauro

jinx
01.03.2008, 16:57
<font size="2" face="Century Gothic">Moin, Mauro,

Du musst Excel schon mitteilen, was gezählt werden soll (also das Suchkriterium)

If WorksheetFunction.CountIf(Range(Cells(lngCounter, 1).Address, Cells(lngCounter, 3).Address), 0) > 1 Then
MsgBox "So wird´s gemacht"
End If</font>