Discussion:
Zellen per Makro ausblenden?
(zu alt für eine Antwort)
HerbLehmann
2006-05-01 08:25:01 UTC
Permalink
Ich habe eine Monatsliste für die Fehlzeiten von Schülern erstellt, die
automatisch übers Jahr aufsummiert. Diese Liste soll möglichst komfortabel
durch Lehrerkollegen geführt werden, die zum Teil 'Computer-Ahnungslos' sind.
Daher müssen die Listen 'vollautomatisch' sein.
Durch Ferien z.B. beiginnt der (Schul)Monat nicht immer am 1., sondern
häufiger erst am 3. oder 10. eines Monats. Die Monatstabellen (jeder Monat
ein Tabellenblatt) sind so aufgebaut, daß in der ersten Spalte das Datum des
ersten Schultages eingegeben wird. Alle anderen Tage des Monats beziehen sich
hierauf (z.B.=a3+1). Der Wochentag wird ausgelesen, wenn es ein Freitag ist
(5) zählt die Formel (z.B.=a3+3) damit wir zum nächsten Montag kommen, etc.
Daraus ergibt sich, daß alle Monatslisten unterschiedlich lang sind.
Angenommen, ich habe auf dem Tabellenblatt eine Monatsliste erstellt, in der
23 Tage erscheinen (31 Tage minus Samstage und Sonntage) und es handelt sich
um einen Monat mit nur 30 Tagen (oder 28 im Februar oder Schulbeginn erst am
14. des Monats..), dann bekomme ich am Endes des Tabellenblattes bereits Tage
des nächsten Monats angezeigt. (z,B. Monat November 06: Spalte 1 - Mi.,
01.06.06, Spalte 23 - Fre, 01.12.06. Das soll vermieden werden. Also, nach
vielen Worten:
Frage: wie kann ich durch bedingte Formatierung oder durch eine Formel
errreichen, daß nicht gewünschte Spalten nicht angezeigt/ausgeblendet werden?
Ins Vorne - Dank an die cleveren Hilfesteller!
--
Herb
Hajo
2006-05-01 11:05:03 UTC
Permalink
Hallo Herb,

siehe Dir doch mal dies Beispiel von meiner HP an

http://www.downloadcounter.de/counter.pl?file=http://home.media-n.de/ziplies/gepackt/vba/arbeitszeit_kalender_ohne_projekt.zip&user=Hajo+Ziplies

Gruß Hajo
MVP für Microsoft Excel
Betriebssystem XP Pro SP2 und Excel Version 2003 SP2.
http://home.media-n.de/ziplies/
Post by HerbLehmann
Ich habe eine Monatsliste für die Fehlzeiten von Schülern erstellt, die
automatisch übers Jahr aufsummiert. Diese Liste soll möglichst komfortabel
durch Lehrerkollegen geführt werden, die zum Teil 'Computer-Ahnungslos' sind.
Daher müssen die Listen 'vollautomatisch' sein.
Durch Ferien z.B. beiginnt der (Schul)Monat nicht immer am 1., sondern
häufiger erst am 3. oder 10. eines Monats. Die Monatstabellen (jeder Monat
ein Tabellenblatt) sind so aufgebaut, daß in der ersten Spalte das Datum des
ersten Schultages eingegeben wird. Alle anderen Tage des Monats beziehen sich
hierauf (z.B.=a3+1). Der Wochentag wird ausgelesen, wenn es ein Freitag ist
(5) zählt die Formel (z.B.=a3+3) damit wir zum nächsten Montag kommen, etc.
Daraus ergibt sich, daß alle Monatslisten unterschiedlich lang sind.
Angenommen, ich habe auf dem Tabellenblatt eine Monatsliste erstellt, in der
23 Tage erscheinen (31 Tage minus Samstage und Sonntage) und es handelt sich
um einen Monat mit nur 30 Tagen (oder 28 im Februar oder Schulbeginn erst am
14. des Monats..), dann bekomme ich am Endes des Tabellenblattes bereits Tage
des nächsten Monats angezeigt. (z,B. Monat November 06: Spalte 1 - Mi.,
01.06.06, Spalte 23 - Fre, 01.12.06. Das soll vermieden werden. Also, nach
Frage: wie kann ich durch bedingte Formatierung oder durch eine Formel
errreichen, daß nicht gewünschte Spalten nicht angezeigt/ausgeblendet werden?
Ins Vorne - Dank an die cleveren Hilfesteller!
--
Herb
HerbLehmann
2006-05-02 19:49:01 UTC
Permalink
Hallo, Hajo,
Dank für die schnelle Antwort, allerdings hilft mit das nicht recht, denn -
trotz der langen Beschreibung - ich vergaß zu erwähnen, daß es sich bei den
besprochenen Zellen nicht um eine Einzelne handelt, sondern für jeden Tag
benötige ich mindestens 8 Spalten und 30 Zeilen für die einzelnen Schüler.
Ich habe schon mal überlegt, ob es nicht möglich ist, einem solchen
'Zellbereich' einen Namen zu geben, und diesen über einen VBA-Befehl
'visible' oder ähnlich zu behandeln. Oder läßt sich sogar ein Zellbereich mit
Namen über eine WENN-Bedingung steuern?
Gruß
Herbert
Thomas Ramel
2006-05-02 05:31:01 UTC
Permalink
Grüezi Herb
Post by HerbLehmann
Die Monatstabellen (jeder Monat
ein Tabellenblatt) sind so aufgebaut, daß in der ersten Spalte das Datum des
ersten Schultages eingegeben wird. Alle anderen Tage des Monats beziehen sich
hierauf (z.B.=a3+1). Der Wochentag wird ausgelesen, wenn es ein Freitag ist
(5) zählt die Formel (z.B.=a3+3) damit wir zum nächsten Montag kommen, etc.
Daraus ergibt sich, daß alle Monatslisten unterschiedlich lang sind.
Angenommen, ich habe auf dem Tabellenblatt eine Monatsliste erstellt, in der
23 Tage erscheinen (31 Tage minus Samstage und Sonntage) und es handelt sich
um einen Monat mit nur 30 Tagen (oder 28 im Februar oder Schulbeginn erst am
14. des Monats..), dann bekomme ich am Endes des Tabellenblattes bereits Tage
des nächsten Monats angezeigt. (z,B. Monat November 06: Spalte 1 - Mi.,
01.06.06, Spalte 23 - Fre, 01.12.06. Das soll vermieden werden. Also, nach
Frage: wie kann ich durch bedingte Formatierung oder durch eine Formel
errreichen, daß nicht gewünschte Spalten nicht angezeigt/ausgeblendet werden?
Ab der zweiten Zeile kannst Du die folgende Formel verwenden, welche die
Wochenenden ausblendet und auch Ende Monat die weiteren Daten nicht mehr
anzeigt:

=WENN(A1="";"";WENN(MONAT(A1)<>MONAT(A1+1);"";A1+1+(WOCHENTAG(A1;2)=5)*2))
--
Mit freundlichen Grüssen

Thomas Ramel (@Web-Interface)
- MVP für Microsoft-Excel -

[Win XP Pro SP-2 / xl2003]
HerbLehmann
2006-05-02 19:54:02 UTC
Permalink
Hallo, Thomas,

Dank für die schnelle Antwort, allerdings hilft mit das nicht recht, denn -
trotz der langen Beschreibung - ich vergaß zu erwähnen, daß es sich bei den
besprochenen Zellen nicht um eine Einzelne handelt, sondern für jeden Tag
benötige ich mindestens 8 Spalten und 30 Zeilen für die einzelnen Schüler.
Ich habe schon mal überlegt, ob es nicht möglich ist, einem solchen
'Zellbereich' einen Namen zu geben, und diesen über einen VBA-Befehl
'visible' oder ähnlich zu behandeln. Oder läßt sich sogar ein Zellbereich mit
Namen über eine WENN-Bedingung steuern?
Gruß
Herbert
Thomas Ramel
2006-05-03 04:57:54 UTC
Permalink
Grüezi Herbert

HerbLehmann schrieb am 02.05.2006
Post by HerbLehmann
Dank für die schnelle Antwort, allerdings hilft mit das nicht recht, denn -
trotz der langen Beschreibung - ich vergaß zu erwähnen, daß es sich bei den
besprochenen Zellen nicht um eine Einzelne handelt, sondern für jeden Tag
benötige ich mindestens 8 Spalten und 30 Zeilen für die einzelnen Schüler.
Ja, das schaut dann schon etwas ansders aus.
Post by HerbLehmann
Ich habe schon mal überlegt, ob es nicht möglich ist, einem solchen
'Zellbereich' einen Namen zu geben, und diesen über einen VBA-Befehl
'visible' oder ähnlich zu behandeln. Oder läßt sich sogar ein Zellbereich mit
Namen über eine WENN-Bedingung steuern?
Hmmm, wie wäre es mit einer Hilfsspalte in der Du per WENN()-Formel die
Kriterien ermittelst und eine Kennung ausgeben lässt?
Über diese Hilfsspalte kannst Du dann per Autofilter (ev. auch mit einem
per VBA automatiserten Spezialfilter) die entsprechenden Zeilen ausblenden
lassen.

In der eigentlichen Datums-Spalte hast Du dann nur noch die Formel für die
Tage des kompletten Monats; eine 'abgespeckte' Version meiner geposteten
Formel reicht da, die per Ende Monat nur noch die relevanten Daten anzeigt.


Mit freundlichen Grüssen
Thomas Ramel (@work)
--
- MVP für Microsoft-Excel -
[Win XP Pro SP-2 / xl2003 SP-1]
Microsoft Excel - Die ExpertenTipps:
(http://tinyurl.com/9ov3l und http://tinyurl.com/cmned)
Loading...