Anzeige
Archiv - Navigation
1308to1312
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
Inhaltsverzeichnis

Daten automatisch täglich kopieren

Daten automatisch täglich kopieren
24.04.2013 19:28:19
Volker
Hallo Forumsmitglieder!
Wegen Anfängerschwierigkeiten mit dem Upload von Beispieldateien erläutere ich meine frühere Frage hier nocheinmal.
Ich habe eine Belegungsverwaltung von Räumlichkeiten übernommen (Siehe als Beispiel die Quelldatei).
In Excel ist ein Raumbelegungsplan angelegt, in dem pro Tabellenblatt für jeweils 6 Tage (Mo-Sa) die Nutzung der Räume eingetragen ist. Jedes Tabellenblatt entspricht also einer Kalenderwoche. Die Tabellenblätter sind folgendermaßen bezeichnet: z.B. 17 Wo. 22.04.- 27.04.2013, 18 Wo. 29.04.- 04.05.2013 usw.
Jeweils in Spalte A ist eine Zeitleiste eingetragen, untereinander fortlaufend für Montag bis Samstag. In den Zeilen A1-A5 sind Rauminfos, die aber für das Kopieren nicht relevant sind.In die Zieldatei soll automatisch täglich jeweils der Bereich unter den blauen Zeilen kopiert werden (z.b. B7:H18 für Montag, B20:H31 für Dienstag usw.). Und dies mit einem Wechsel in die neue Kalenderwoche bzw. auf das nächste Tabellenblatt.
Bisher wird dies jeden Tag händisch erledigt.
Die Zieldatei besteht nur aus einem Tabellenblatt, dessen Bereich A7:H17 täglich überschrieben wird und auch weiterhin überschrieben werden soll. Dessen Formatierung soll beibehalten werden. Diese Übersicht wird einerseits ausgedruckt, soll aber auch andererseits auf einem Infomonitor angezeigt werden.
Also folgende Aufgaben sollen zusammengefasst erledigt werden:
Automatisch täglich den entsprechenden Zellbereich aus der Quelldatei in immer den selben Bereich in der Zieldatei kopieren. Aber auch zur neuen Woche in das neue Tabellenblatt (Kalenderwoche) der Quelldatei wechseln.
Dazu kommt allerdings auch noch, dass die Raumbelegungspläne jeweils für ein Jahr erstellt wurden und demnach für jedes Jahr eine neue Datei angelegt ist(wird). Super wäre, wenn automatisch nach einem Jahr in die neue Datei gewechselt werden könnte.
Zur Info: Der Raumplan soll auf dem Dienstrechner unter Office 2010 laufen, habe aber oben Office 2003 angegeben, weil ich dies auf dem Heimsystem zunächst testen möchte.
Quelldatei: https://www.herber.de/bbs/user/85039.xls
Zieldatei: https://www.herber.de/bbs/user/85040.xls
Ich hoffe, ich habe die Problematik verständlich beschrieben. Es wäre klasse, wenn hier findige Köpfe wären, die mich der Lösung des Problems näher bringen.
Danke schon einmal im Voraus
Volker

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
es sieht lösbar aus, aber...
25.04.2013 06:52:11
Oberschlumpf
Hi Volker
...erst noch mal ne Frage.
Wenn ich dich richtig verstand, soll es in der Zieldatei so aussehen:
(ich hab Mi 24.04.13 gewählt, weil da für einen Raum mehrere Einträge sind)
Userbild
Es sollen also alle Einträge, zeitlich sortiert von früh bis spät, in die jeweiligen Raumspalten eingetragen werden?
Und wenn du z Bsp morgen das Makro startest, sollen alle Einträge aus Quelldatei nur vom Freitag in die Zieldatei übertragen werden?
Und wenn die nächste Woche beginnt, dann entprechend des Wochentages aus dem richtigen Tabellenblatt für die nächste Woche halt, oder?
Ciao
Thorsten

Anzeige
AW: es sieht lösbar aus, aber...
25.04.2013 16:12:26
Volker
Hallo Thorsten!
Ja, im Prinzip ist es so richtig. Nur sind in deinem Vorschlag zeitlich versetzt startende Veranstaltungen in die gleiche Zeile gerutscht (vgl. H28 R3 und R4 : 11:00h und 7.30h Beginn). Diese sollten natürlich entsprechend der Zeitleiste in der Quelldatei eingetragen sein. Diese fehlt in der Zieldatei. Das Zellraster von Quell- und Zieldatei entsprechen sich aber.
Gruß
Volker

hmm....aber lesen können die,....
25.04.2013 17:42:45
Oberschlumpf
...die den Plan lesen sollen, oder?
Da steht doch für jeden Kurs die Uhrzeit davor.
Hi Volker
Na gut, ok, dann so wie gewünscht.
Hab dann aber leider noch ne Frage + n Vorschlag.
Frage:
Sollen in der Zieldatei dann auch die verbundenen Zellen übernommen werden?
Vorschlag:
Wenn Antwort auf Frage = ja, dann könnte man die verbundenen Zellen in der Zieldatei auch mit farblichen Hintergrund versehen, oder nicht? Das wäre dann noch übersichtlicher, finde ich zumindest.
Warte auf Antworten.
Ciao
Thorsten

Anzeige
noch Fragen
25.04.2013 17:45:20
Oberschlumpf
Hi Volker
Da es sich bei Quell- und Zieldatei um 2 unterschiedliche Dateien handelt, sind denn beide Dateien im gleichen Verzeichnis gespeichert?
Und wie heißt denn die Zieldatei?
Ich muss ja schon wissen, wie die Zieldatei heißt, wenn ich per VBA die Datei öffne + Daten eintrage.
Ciao
Thorsten

AW: noch Fragen
25.04.2013 21:27:49
Volker
Hallo Thorsten!
Zu den Dateinamen:
Nenn die Quelldatei vorerst mal "Raumplan 2012_2013" und die Zieldatei "Raumplan täglich".
Ja, sie befinden sich im gleichen Verzeichnis.
Die verbundenen Zellen sollen auch verbunden bleiben und in der Zieldatei ihre alte Position einnehmen, was die Lage auf der "Zeitachse" wiederspiegelt, obwohl die Leute, die den Plan lesen können, die Zeitangaben bekommen. :-)
Vielleicht wird irgendwann einmal der Plan anders formatiert, momentan ist es mir wichtig, den Automatismus hinzubekommen.
Apropos Formatierung: Von der Quelldatei soll momentan lediglich die Position der Zellen und im Falle von verbundenen Zellen eben dies übernommen werden. Die restliche Formatierung (evtl. andere Schriftgröße, oder -farbe) soll von der Zieldatei übernommen werden.
Wenn sich dies aber auch mit VBA erledigen liese, wäre das super. Aber soweit hatte ich bei meiner Eingangsfrage noch nicht gedacht.
Gruß
Volker

Anzeige
nur kurze Info, dass...
26.04.2013 16:24:19
Oberschlumpf
...dein Problem in Arbeit is
Hi Volker
Vllt bekomm ich es heut Abend fertig, weiß ich aber noch nicht.
Bis denn dann
Thorsten

Automatismus is fertich :-)
26.04.2013 18:51:20
Oberschlumpf
Hi Volker
Ich denke, die Datei ist fertig.
(na ja, nur etwas bestimmtes schaffte ich nicht, doch dazu später mehr)
Erst mal...
https://www.herber.de/bbs/user/85085.xls das ist die Quelldatei mit VBA-Code
https://www.herber.de/bbs/user/85086.xls das ist die Zieldatei mit Namen Raumplan taeglich.xls
Speicher erst mal beide Dateien in das gleiche Verzeichnis.
(arbeite erst mal mit den Testdateien, bevor du den Code in die Originaldatei überträgst)
Wichtig ist, dass du die Zieldatei unter dem Namen "Raumplan taeglich.xls" abspeicherst, weil im Code nach einer Datei mit eben genau diesem Namen gesucht wird.
Die Quelldatei kannst du benennen wie du willst.
So...
Wenn die Vorarbeiten erledigt sind, dann...
...öffne die Quelldatei mit dem Code und aktiviere die Makros.
Schon Sekunden später wirst du die Zieldatei geöffnet sehen, mit all den Einträgen für das heutige Datum.
Was genau passiert?
1. Nach dem Öffnen der Quelldatei wird anhand des Datums, welches am PC eingestellt ist, die zum Datum zugehörige Kalenderwoche ermittelt.
2. Im nächsten Schritt wird das Tabellenblatt angezeigt, welches mit der Kalenderwoche beginnt, die zuvor ermittelt wurde.
3. Nun wird erst mal der Wochentag ermittelt - Bsp heute = FREITAG
4. Dann wird in der Quelldatei in Spalte A die Zelle gesucht, in der auch der Wochentag steht, der zuvor ermittelt wurde - FREITAG befindet sich in der Zelle A58
5. Nun weiß das Programm, dass sich die für FREITAG wichtigen Datenzeilen in den Zeilen 59 - 70 befinden.
6. Das Programm sucht jetzt in allen benutzten Spalten nur in den Zeilen 59 - 70 nach Einträgen.
7. Wird ein Eintrag gefunden, wird die Datei "Raumplan taeglich.xls" ...
...geöffnet
...alle Datenzeilen werden geleert, und das hellblaue Rahmengitter wird neu "verlegt"
...und alle gefundenen Einträge aus Quelldatei werden an den richtigen Stellen eingetragen
...- dabei werden die verbundenen Zellen übernommen
...- und es werden die Formate für Schriftart + -größe in der Zieldatei beibehalten
Einen Unterschied gibt es trotzdem.
In deiner Quelldatei ist ein Eintrag manchmal vertikal zentriert oder er steht an der Oberkante einer Zelle.
Ich habe in der Zieldatei alle Einträge sowohl vertikal als auch horizontal zentriert eingetragen.
So, eigentlich funktioniert die Datei nun voll automatisiert.
Du musst die Quelldatei, also den Jahresplan nur starten, der Rest geschieht per Code vollautomatisch.
Was ich nicht schaffte, ist, dass mein Code auch jahresübergreifend funktioniert, obwohl mein Code in jeder Quelldatei (Jahresplan) funktioniert, wenn immer die gleichen Zeilen/Spalten wie in den Bsp-Dateien verwendet werden.
Automatisch geht das deswegen nicht, weil der Code automatisch komplett in die neue Datei übertragen werden muss.
Du könntest dieses Problem lösen, wenn du...
...bei der neuen, nachsten Jahresplan-Datei den kompletten Code per Hand überträgst mit Copy + Paste
oder
...die Werte für den neuen Jahresplan in die alte Datei überträgst - also alle Zeilen/Spalten markierst, kopierst + in der alten Datei alles überschreibst.
Nu bin ich fertig...jippieh :-)
Hilfts?
Ciao
Thorsten

Anzeige
AW: Automatismus is fertich :-)
26.04.2013 21:10:37
Volker
Hallo Thorsten!
Zunächst mal vielen herzlichen Dank!
Ich probiere erst mal aus. Es wird nur nicht ganz so schnell gehen, bis ich alles soweit eingerichtet habe. Ich brauche dazu etwas Ruhe. Daher lasse ich diesen Thread erst mal offen und melde mich nochmal.
Zu der vertikalen Ausrichtung: Sie sollen vertikal zentriert sein. Da die Einträge in der Roh(Quelldatei) von verschiedenen Personen vorgenommen werden, gibt es dort Unterschiede, die aber in der Zieldatei durch eine einheitliche Formatierung verschwinden.
Aber auf jeden Fall an dieser Stelle ein ganz großes "Dankeschön".
Volker
Ich muss mich wohl mal etwas mit VBA näher beschäftigen :-)

Anzeige
AW: Automatismus is fertich :-)
27.04.2013 14:21:51
Volker
Hallo Thorsten!
Ich habe zwischenzeitlich doch Gelegenheit gehabt, dein Makro zu testen. Prinzipiell funktioniert es super.
Der ein oder andere Punkt wäre noch etwas zu modifizieren.
a) Nach meiner Vorstellung sollte das Makro von der Zieldatei aus gestartet werden. In der Quelldatei "dürfen" alle etwas eintragen. Jedoch sollte sich die Zieldatei dabei nicht mitöffnen. Diese soll später im Prinzip nur von einer Person bearbeitet werden, um den Plan auszudrucken oder aber in eine Powerpoint-Präsentation zu hängen, die mittels powerpoint viewer auf einem Präsentationsmonitor läuft.
b)zu Punkt 6. und 7.: Wird der Plan auch übertragen, wenn keine Einträge vorhanden sind? oder wäre das einrichtbar?
c) Kann ich Formatänderungen in der Zieldatei unabhängig vom Makro durchführen, die dann später erhalten bleiben?
Ergänzung zu a)
Die Präsentation besteht bereits, auch mit der "Raumplan täglich"-Verknüpfung, die bisher eben täglich manuell aktualisiert wird. Derzeit wird aber auch noch händisch die Powerpoint-Präsentation als "neu" in einen Ordner auf dem Server-Laufwerk für den Monitor geschoben. Es besteht ein Script, wodurch dann am anderen Morgen mit Start des Präsentationsmonitors immer die Präsentation "neu" in "aktuell" umbenannt und gestartet wird. Wenn am Abend das System runterfährt, wird die gerade noch "aktuelle" Präsentation als Sicherheitskopie "alt" abgespeichert. Dann beginnt das Spiel am kommenden Morgen wieder von vorne.
Die Präsentation "neu" enthält also immer den aktuellen Raumplan. Hier ist es auch möglich, kurzfristig Änderungen einzutragen und dann die Präsentation neu zu starten.
Vielleicht führt das hier etwas zu weit, aber ich frage mich, ob sich dieses Verfahren (ppt "neu" mit "Raumplan täglich" aktualisieren und in Server-Ordner kopieren) nicht auch automatisieren liese.

Anzeige
deine neuen Anforderungen führen leider für mich..
27.04.2013 14:36:41
Oberschlumpf
...zu weit
Hi Volker
...Prinzipiell funktioniert es super....
Schön, freut mich, dann hab ich ja das Ziel erreicht, welches hier erfragt wurde.
Aber was du nun alles neu geschrieben hast, hmm....ärgert mich ein wenig.
Ich bin extra all die Texte bis hierhin noch mal durchgegangen.
Leider fand ich kein einziges Mal den Hinweis, dass der Code in der Zieltabelle gestartet werden soll.
So müsste ich nun den ganzen Code umschreiben - sorry - aber dazu habe ich keine Lust.
Daher müsstest du also deine hier neugestellten Fragen in einem neuen Thread noch mal stellen.
Ein paar kleine Tipps.
Zum Einen überleg dir nun ganz genau, was wann, wie, wo, warum geschehen soll.
Denn ich behaupte mal, niemand hat Lust, zu erkennen, dass seine Zeit + Mühen umsonst waren, weil dem Fragenden ganz am Schluss noch einfällt: "ach ja, und dann hätt ich ddann noch gerne alles....anders..."
Zum Anderen kommt das, was du hier gern als Ziel erreichen möchtest (ich muss eher schreiben...erreichen lassen möchtest), einer Auftragsprogrammierung gleich.
Ja, ich weiß, deine erste Frage, auf die ich reagierte, kommt dem auch gleich, aber ich wollte es ja so.
Auf jeden Fall wäre es vielleicht gut, wenn du deine Fragen einzeln stellst, und natürlich so viel wie geht, selbst versuchst.
Na ja, ich wünsch dir jedenfalls viel Erfolg im neuen Thread.
Gut ist übrigens, dass du Bsp-Dateien zur Verfügung stellst. Manche Fragenden weigern sich da richtiggehend.
Ciao
Thorsten

Anzeige
AW: deine neuen Anforderungen führen leider für mich..
28.04.2013 11:10:52
Volker
Hallo Thorsten!
Ich finde es sehr schade, dass du auf meine letzte Antwort mit ...ärgert mich ein wenig... und...aber dazu habe ich keine Lust... reagierst.
Ich gebe dir Recht und das ist mir mittlerweile auch bewusst geworden, dass meine Problemstellung recht komplex ist. Wenn ich jedoch von VBA Ahnung hätte und es besser abschätzen könnte, hätte ich vermutlich die Frage so nicht gestellt. Dass im Laufe einer Problembehandlung noch Fragen auftauchen, die so anfänglich auch noch nicht klar waren, ist, glaube ich, durchaus legitim und nicht ungewöhnlich. Daher möchte ich deine Bemerkung Denn ich behaupte mal, niemand hat Lust, zu erkennen, dass seine Zeit + Mühen umsonst waren, weil dem Fragenden ganz am Schluss noch einfällt: "ach ja, und dann hätt ich dann noch gerne alles....anders..." in diesem Sinne zurückweisen.
Ich finde diese Art der Reaktion etwas unangemessen. Denn vermutlich wird man zu Beginn nie alle Detailfragen kennen, zumal sie sich manchmal erst aus einem möglichen Lösungsweg ergeben.
Ich bin ja sehr froh dankbar, dass du mir hier schon ein riesengroßes Stück weiter geholfen hast. Ich respektiere deine Reaktion, wenngleich ich sie bzw. das Nichteingehen auf meine konkrete Nachfrage im Sinne einer Hilfestellung durch dieses Forum für unangebracht halte.
Volker

Anzeige
AW: deine neuen Anforderungen führen leider für mich..
28.04.2013 11:47:49
Oberschlumpf
Hi Volker
ja, mag sein, dass dir meine Antworten nicht gefallen. Würde mir an deiner Stelle vielleicht auch so gehen.
Aber sei es drum. Ich hab wirklich n paar Stunden investiert, um deine Erstfrage erfolgreich zu lösen.
Nun kommst du aber damit, dass alles bzw vieles anders sein müsste - vor allem aber eben, dass der Code in der Zieldatei stehen soll.
Du schreibst:
...a) Nach meiner Vorstellung sollte das Makro von der Zieldatei aus gestartet werden. In der Quelldatei "dürfen" alle etwas eintragen. Jedoch sollte sich die Zieldatei dabei nicht mitöffnen. Diese soll später im Prinzip nur von einer Person bearbeitet werden, um den Plan auszudrucken oder aber in eine Powerpoint-Präsentation zu hängen, die mittels powerpoint viewer auf einem Präsentationsmonitor läuft. ...
Und daraus ergibt sich für mich die Tatsache (weil Nach meiner Vorstellung), dass du all das schon wusstest, bevor ich begann, eine Lösung zu erwarten.
Und somit hat sich die "Idee", den Code in die Zieldatei zu schreiben, doch nicht erst entwickelt, nachdem du eine eigtl funktionierende Lösung gesehen hast.
Na ja, man kann es so oder so sehen.
Auf jeden Fall aber handelt es sich bei deinen neuen Wünschen um nichts anderes als um eine Auftragsprogrammierung.
Hin und wieder mach ich ja auch das gern gratis (wie auch für dich im 1. Fall), weil es mich selbst interessierte, eine Lösung zu finden.
Aber nun ja, ich hab eine Lösung gefunden. Ich bin zufrieden.
Ne Antwort noch zu deinem b)
Hab ich jetzt ehrlich gesagt, (auch) nicht getestet. Aber du findest es sehr leicht selbst heraus, in dem du einfach mal ein Datum wählst, in dem keine Einträge vorhanden sind.
Bin fast sicher, dass dann auch die Zieldatei geöffnet wird, aber es werden keine Einträge vorgenommen - woher auch?
Ciao
Thorsten
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige