gelöst Batch rechnen mit Datum

Mitglied: PascalS

PascalS (Level 1) - Jetzt verbinden

09.08.2007, aktualisiert 13.08.2007, 18715 Aufrufe, 7 Kommentare

Hallo zusammen,

ich habe zwar über die Suche ein paar ähnliche Beiträge gefunden, aber keinen, der mir 100%ig geholfen hat.

Mir stellt sich folgendes Problem:
Ich möchte für monatlich wiederkehrende Auswertungen eine Batch-Datei in Excel Makro einbinden, dass die ausgegebenen Analysen automatisch in Ordner verschiebt.
Diese Ordner müssen neu erstellt werden.

Mein Lösungsansatz war bisher folgender:

Ich habe per Batch einen Ordner erstellen lassen, den ich über das Auslesen der Systemzeit über "%date:~xy%" mit dem Format MMJJJJ benannt habe.


Es handelt sich um monatlich wiederkehrende Auswertungen, die beispielsweise im August erstellt wurden, jedoch unter dem Monat Juli abgelegt werden sollen.

Ich suche nun eine Möglichkeit, das Datum jeweils um einen Monat zurückzurechnen.

Habe mir schon überlegt Variablen for Monat und Jahr zu setzen und diese dann im Dateinamen zusammenzusetzen, nachdem ich den Monat um 1 reduziert habe.

Allerdings habe ich das noch nicht hinbekommen.

Außerdem würde ich mit dieser Methode Probleme beim Jahreswechsel bekommen.
--> 002008

Vielleicht hat ja schon mal jemand Erfahrungen damit gesammelt, oder kann mir weiterhelfen?!


Viele Grüße
Pascal
Mitglied: Markx
09.08.2007 um 18:55 Uhr
Hi,

mal auf die Schnelle.. du schreibst, das du im Excel selbst mit Makros arbeitest.. für dein Ziel wäre es aus meiner Sicht sinnvoll per VBA-Code die/den Ordner im Dateisystem zu erstellen.. kann dir jetzt im Moment nicht direkt mit Code-Beispielen helfen (hab mit VBA ne Weile nichts mehr machen müssen), aber du hättest erstmal ne Richtung zum recherchieren.. Meiner Ansicht nach ist's im VBA auch einfacher einen Monat "abzuziehen", sprich direkt mit Variablen vom Type "Date" zu arbeiten..

Gruß Markx
Bitte warten ..
Mitglied: DerBiba
10.08.2007 um 01:22 Uhr
Wenn du dir folgendes mal in ein Batchfile kopierst, kannst du damit (ab WinXP) dir entsprechende Ordner anlegen.
Die Berechnung des Vorjahres im Januar hat eben noch nicht hingehauen. Da muss ich nochmal drüber schlafen und poste das Ergebnis dann noch

Bitte warten ..
Mitglied: PascalS
10.08.2007 um 10:50 Uhr
Hi DerBiba,

danbke für die schnelle Antwort. Klingt eigentlich auf diese Weise auch besser, als die ganze Rechnerei.

Allerdings nutze ich an diesem Rechner leider immer noch Win 2k...

Gruß
Pascal
Bitte warten ..
Mitglied: Biber
10.08.2007 um 17:21 Uhr
Moin PascalS,

>Allerdings nutze ich an diesem Rechner leider immer noch Win 2k...
Macht nichts... der Code oben läuft ab Win NT... unter Win 2000 ist es kein Problem.

Gruß
Biber
Bitte warten ..
Mitglied: PascalS
10.08.2007 um 17:42 Uhr
Hallo Biber,

vielen Dank, es funktioniert.

Ich habe in der Vorletzten Zeile bei der Zielverzeichnisangabe das Monat in %ajr% geändert, dass ich das Format 200707 ausgegeben bekomme!

Reicht die Abfrage aus und den Wert auf das Vorjahr zurück zusetzen, wenn der Monat von 01 auf 12 gesetzte wird.

Also zum Beispiel der das Programm das Datum korrekt von 200801 auf 200712 setzt?

Viele Grüße
Pascal
Bitte warten ..
Mitglied: Biber
10.08.2007 um 18:15 Uhr
Moin PascalS,

wenn Du Markx' Hinweis überlesen willst und es mit native Batch angehst, dann...

Dann sollte es ausreichen.
Hat aber die Eleganz eines F.D.P-Wahlplakats.

Du solltest über die Forumssuche einige Kopien eines Anderthalb-Zeilen-Batch/VBS-Schnipsels namens "yesterdate" bzw. "gestern.vbs" finden, wo nun tatsächlich in einem Batch mit einem VBS-Aufruf wirkliche Datumswerte berechnet werden.

Dieses Aus-Textstrings-neuen-Datumsstring-Zusammenstoppeln kostet mehr Gehirnschmalz als ein Aufruf einer DateAdd()/DateDiff()-Funktion.

Grüße
Biber
Bitte warten ..
Mitglied: PascalS
13.08.2007 um 10:54 Uhr
Hi Biber,
habs nun gelöst.
Visual Basic ist natürlich viel eleganter und vor allem auch kürzer, aber mit der Batch Variante geht es nun auch.

Vielen Dank nochmal für die Hilfe
Gruß
Pascal
Bitte warten ..
Heiß diskutierte Inhalte
Sicherheit
Unbefugtes Öffnen zählt nicht als Einbruch
certifiedit.netInformationSicherheit19 Kommentare

Moin, wenn wir das auf die IT übertragen dürfte kaum ein Einbruch etc unter Einbruch zu definieren sein, immerhin ...

Ausbildung
MCSA Kurs Server 2016 mit VM Jobchancen
gelöst IntershipFrageAusbildung17 Kommentare

Hallo Leute, dies ist eine dringende Frage für mich, da ich gerne einen MCSA Kurs belegen möchte. Ich brauche ...

DSL, VDSL
Glasfaser Neuvertrag möglich, bei bereits vorhandenem alten Telefonvertrag im Haus?
gelöst nioletFrageDSL, VDSL15 Kommentare

Hi Könnte eigentlich im gleichen Haus ein neuer Glasfaservertrag abgeschlossen werden, sagen wir mal auf Stockwerk 0, wenn bereits ...

Exchange Server
Zustellbestätigung deaktivieren
defiant01FrageExchange Server15 Kommentare

Hallo, ich stehe vor der Aufgabe bei einem Postfach die Zustellbestätigung für eingehende Mails zu deaktivieren. Der User geht ...

Netzwerke
SonicWall VPN - Windows top - Mac flopp
MazenauerFrageNetzwerke12 Kommentare

Grüezi und hallo Vorgeschichte, das Übliche: Marketingfirma. Corona. Homeoffice. Soweit so normal, nur scheinen die iMacs irgendein Problem mit ...

Peripheriegeräte
Kaufberatung 32" Monitor mit WQHD Auflösung
gelöst GrueneSosseMitSpeckFragePeripheriegeräte11 Kommentare

Ich wollt mir einen 32" Monitor als 16:9 zulegen, 2560x1440 Pixel (WQHD). muß kein Ultrawide mit 21:9 und curved ...

Ähnliche Inhalte
Batch & Shell

(Batch): "Find" Befehl nach aktuellem Datum filtern

gelöst unauthorized-userFrageBatch & Shell3 Kommentare

Guten Morgen an alle, für die Dokumentation der Server-Updates habe ich eine winzige *.Bat-Datei geschrieben, welche mir alle installierten ...

Batch & Shell

Per Batch ein Datum in einer XML-Datei auf das aktuelle Datum aktualisieren

gelöst addy0604FrageBatch & Shell4 Kommentare

Hallo Zusammen, ich hab hier ein kleines Problem. Wird für euch wahrscheinlich ein Klacks sein, aber ich verzweifle hier ...

Batch & Shell

Windows 10 Batch für Datum und Uhrzeit setzen

gelöst zeroblue2005FrageBatch & Shell18 Kommentare

Hallo Zusammen, habe hier ein Laptop von Medion,, wo die Bios fest verlötet ist. Fragt mich bitte nicht was ...

Batch & Shell

Batch xls nach aktuellem Datum auslesen und email senden

gelöst michi-ffmFrageBatch & Shell14 Kommentare

Hallo Leute, ich hänge schon seid langem an diesem Skript. Da meine Batch Kenntnisse miserabel sind brauche ich eure ...

Batch & Shell

Batch soll an einem bestimmten Datum eine Website öffnen

gelöst YanmaiFrageBatch & Shell3 Kommentare

Hallo ihr Administratoren, ich brauche eine .bat Datei, die an einem bestimmten Datum eine Website öffnet. Hier einmal meine ...

Batch & Shell

Batch Anpassung der Syntax bei IF EXIST bei Datum

gelöst zeroblue2005FrageBatch & Shell9 Kommentare

Hallo Zusammen, da habe ich doch glat bei einer Batch ein groben Denkfehler drin und jetzt stecke ich fest. ...

Berechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid CloudSmall Business ITSmall Business IT