docusnap-dude
Goto Top

In VBS Date-Funktionen nutzen...

Loginscript: an bestimmtem Datum Aktion ausführen...

Hallo,

ich komm wohl doch nie weg von meinem guten alten DOS-Batch....

Zum Henker wie bekomme ich es gebacken, das in einem Loginscript (VBS) an einem bestimmten Datum eine Messagebox erscheint. Und das UNABHÄNGIG vom Datumsformat des Users....

Das hier funktioniert leider so gar nicht:

if day("05") then and month("06") and year("2011") then  
	wscript.echo ("Achtung! Heute gibt's gesponsorten Kaffee & Pflaumenkuchen in der Kantine :-DD")  
end if

Irgdnwas fehlt da noch; nur was und vor allem: Wie ist das wenn einer am Datumsformat hantiert??

Danke für Eure Hilfe.

Frank

Content-Key: 167489

Url: https://administrator.de/contentid/167489

Printed on: April 28, 2024 at 06:04 o'clock

Member: TsukiSan
TsukiSan Jun 05, 2011 at 14:19:40 (UTC)
Goto Top
hallo Frank,

dein
if day("05") then and month("06") and year("2011") then
beinhaltet ein then zu viel!

Gruss
Tski
Member: TsukiSan
TsukiSan Jun 05, 2011 at 14:22:53 (UTC)
Goto Top
Zum Henker wie bekomme ich es gebacken, das in einem Loginscript (VBS) an einem bestimmten Datum eine Messagebox erscheint. Und das UNABHÄNGIG vom Datumsformat des Users....

na evenutell so:
dd = day(date)
mm = month(date)
yy = year(date)

meinDatum = 01072011

temp = dd & mm & yy
if temp = meinDatum then .....
so müßte es ungetestet funktionieren

Gruss
Tsuki
Member: Friemler
Friemler Jun 05, 2011 at 14:25:26 (UTC)
Goto Top
Hallo Frank,

  1. Ein Then zuviel
  2. Sollte das so heißen:

if day(now) = 5 and month(now) = 6 and year(now) = 2011 then

Gruß
Friemler


[EDIT]
Oh, zu langsam.
[/EDIT]
Member: jonny83
jonny83 Jun 05, 2011 at 14:34:56 (UTC)
Goto Top
Hi,

also du verwendest in VBScript einfach nur "Date()" was dir das Datum vom System zurückliefert.
dein if day and month etc.... sieht schon noch mehr nach Batchverarbeitung aus face-smile

Du kannst das z.B. einfach so machen

szDatum = replace(Date(),"/",".")

so würde er dir z.B ein Datumsformat von 01/01/2011 in 01.01.2011 ändern.
das Ersetzen kannst du ja öfter machen falls du nicht sicher bist welches Datumsformat du zu erwarten hast.
du könntest das dann alles so machen:

nimm gar kein Zeichen im Datum - also nimm immer 01012011

szDatum = replace(Date(),"-","")
szDatum = replace(szDatum,"/","")
szDatum = replace(szDatum,".","")
usw....(falls überhaupt nötig)

dann bekommst du hier z.B. für heute: 05062011

jetzt suchst du danach

if szDatum = "05062011" then
---wscript.echo "kaffe kuchen und blaaaa"
end if

PS: das mit dem Replace könnte man auch besser verschachteln oder über eine schleife laufen lassen.
Alo du könntest deine Suchkriterien so setzen
szSuchen = "/#.#-"
später das dann in ein Array packen
arrSuchen = split(szSuchen,"#")
und dann das Array durchlaufen
For i = uBound(arrSuchen) to lBound(arrSuchen)

blabla usw.... face-smile


noch was by the way:

guck mal - ich hatte das mal gebraucht bzgl. Datumsberechnung etc...
evtl. kannst du das gebrauchen für deine Kaffe & Pflaumenkuchen Ausgabe :D

' *
' Schritt0
' Das Datum des heutigen Tages wird ausgelesen bzw. es werden
' die "Ausnahmepr¸fungen" definiert
'
*
Dim dtmDate, intDayOfWeek, x
dtmDate = Date()
'dtmDate = #10/1/2010#

'*
' Ermitteln des ersten Montags des
' aktuellen Monats
'
*
Do Until x = 1
intDayOfWeek = Weekday(dtmDate)
If intDayOfWeek = 2 Then
Wscript.Echo "Der erste Montag des Monats ist am " & dtmDate & "."
Exit Do
Else
dtmDate = dtmDate + 1
End If
Loop
'*
' Pr¸fen ob HEUTE der erste Montag
' des aktuellen Monats ist
'
*
If dtmDate = Date() then
wscript.echo "JA"
else
wscript.echo "nein"
end if
Member: TsukiSan
TsukiSan Jun 05, 2011 at 14:47:56 (UTC)
Goto Top
hallo jonny83,

dein
so würde er dir z.B ein Datumsformat von 01/01/2011 in 01.01.2011 ändern.
würde nur fruchten, wenn die Einstellungen der Maschine dd/mm/YYYY sind.
frankoehli schreibt aber
das UNABHÄNGIG vom Datumsformat des Users....
da ist man mit Abfrage von
1) day(Date)
2) month(Date)
3) year(Date)
völlig unabhängig von. Und wie man die 3Dinger dann nachher zusammenbaut ist völlig dem Author des Progis überlassen face-wink
Trotzdem sind deine Ideen eventuell informativ für den TO

Gruss
Tsuki
Mitglied: 76109
76109 Jun 05, 2011 at 15:54:04 (UTC)
Goto Top
Hallo frankoehli!

Sollte auch so gehen:
If DateSerial(2011, 6, 5) = Date Then WScript.Echo "..."  

Gruß Dieter
Member: DocuSnap-Dude
DocuSnap-Dude Jun 06, 2011 at 09:17:00 (UTC)
Goto Top
Hi an euch alle,

Bingo!

Letztlich hab ich folgendes Benutzt (Danke an Friemler) weil es mir am übersichtlichsten erscheint:


if day(now) = 7 and month(now) = 6 and year(now) = 2011 then
  wscript.echo "Es gibt Kaffee in der Kueche"  
      else
  wscript.echo "heute kein Kaffee"  
end if 

Supi; Danke!
Member: DocuSnap-Dude
DocuSnap-Dude Jun 06, 2011 at 09:18:45 (UTC)
Goto Top
Hallo,

danke euch allen! siehe oben mein letzter Kommentar. Supi!