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

IF(WEEKDAY

IF(WEEKDAY
20.04.2007 22:22:24
Alois


Hallo Excel Experten
Wie muß ich das in VBA schreiben ?
IF(WEEKDAY(ActiveCell.Row, ActiveCell.Column)=2 ( also der Wochentag des Datums Montag ist ) dann soll Cells(ActiveCell.Row - 2, ActiveCell.Column).Select gemacht werten. (also der Samstag selektiert werden)
Wie geht da die richtige Schreibweise ?
Bitte um eure Hilfe
Alois


6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: IF(WEEKDAY
20.04.2007 22:57:00
Erich
Hallo Alois,
meinst du das?
If Weekday(ActiveCell) = 2 Then ActiveCell.Offset(-2, 0).Select
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: IF(WEEKDAY
20.04.2007 23:53:16
Alois
Danke für die Hilfe. Richtig ist es dann so.


If Weekday(ActiveCell.Row, ActiveCell.Column) = 2 Then ActiveCell.Offset(-2, 0).Select


AW: IF(WEEKDAY
21.04.2007 09:16:22
Erich
Hallo Alois,
bist du sicher?
Mit
Weekday(ActiveCell.Row, ActiveCell.Column)
wertest du die aktuelle Zeilennummer als Datum aus.
(Ist B5 die aktive Zelle, prüfst du den 05.01.1900.)
Der zweite Parameter von Weekday() sollte eine Zahl von 0 bis 7 beinhalten,
die den ersten Tag der Woche festlegt.
Probier mal deine Anweisung, wenn die aktive Zelle sich in Spalte H oder weiter rechts befindet...
Welches Datum in der aktiven Zelle steht, ob sie überhaupt ein Datum enthält,
spielt bei deiner Anweisung keine Rolle.
Mein Vorschlag etwas ausführlicher und deutlicher:
If Weekday(ActiveCell.Value, 1) = 2 Then ActiveCell.Offset(-2, 0).Select
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: IF(WEEKDAY
21.04.2007 16:30:00
Alois
Leider ergibt das einen Fehler
Anwendungs- oder objektdefinierter Fehler
Den in weiterer folge muss ich mit Zellbezügen in der Form
Range(Cells(ActiveCell.Row, ActiveCell.Column), Cells(ActiveCell.Row + 12, ActiveCell.Column + 10)).Select
oder
Range(Cells(3, 11), Cells(ActiveCell.Row - 2, ActiveCell.Column - 1)).Select
arbeiten.
Das scheint sich nicht zu vertragen
Gruß Alois

AW: IF(WEEKDAY
21.04.2007 18:35:00
Erich
Hallo Alois,
WOBEI gibt es einen Fehler? Bei a) oder b) ? (Beides hatte ich vorgeschlagen.)
a) Probier mal deine Anweisung, wenn die aktive Zelle sich in Spalte H oder weiter rechts befindet...
oder
b) If Weekday(ActiveCell.Value, 1) = 2 Then ActiveCell.Offset(-2, 0).Select
Ist eigentlich sichergestellt, dass in der aktiven Zelle ein Datum steht?
Wenn nicht, wird Weekday() einen Fehler liefern.
Zu deiner Formulierung
"Range(Cells(ActiveCell.Row, ActiveCell.Column), Cells(ActiveCell.Row + 12, ActiveCell.Column + 10)).Select"
Cells(ActiveCell.Row, ActiveCell.Column) ist doch nichts anderes als ActiveCell, oder?
Dann ist die Zeile so:
"Range(ActiveCell, Cells(ActiveCell.Row + 12, ActiveCell.Column + 10)).Select"
Das könnte man einfacher mit Offset so schreiben:
"Range(ActiveCell, ActiveCell.Offset(12, 10)).Select"
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: IF(WEEKDAY
21.04.2007 23:13:42
Alois
Danke für die ausführliche Hilfe. Habe jetzt alles auf die kurze Schreibweise umgestellt. Jetzt kommt kein Fehler mehr. Hatte wohl einige Schreibfehler drin. Nochmals Danke.
Gruß Alois aus Reutte/Tirol/Österreich

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige