sinzal
Goto Top

Excel-Tabellen vergleichen und Unterschiede automatisiert übernehmen

Hallo Admins,

Ich habe eine Frage zu Microsoft Excel, die mir seit einigen Tagen Kopfzerbrechen bereitet. Das Szenario dazu ist folgendes:
Bei einem Kunden arbeiten mehrere Arbeiter in einer Excel-Datei, die zentral im Netzwerk liegt und auf die alle zugreifen können. Es gibt jedoch einen Außendienst-Mitarbeiter, der mit seinem Laptop zu Kunden fährt und dort vor Ort an Produkten Daten aufnimmt, die auch in diese Tabelle gehören. Beim Kunden kann er nicht auf die zentrale Datei im Netzwerk zugreifen (VPN-Zugang zum Netzwerk gibt es nicht), weshalb er eine lokale Kopie der Datei auf seinem Laptop mit sich führt und darin die neu erfassten Daten einträgt. Kommt der Außendienstler zurück in seine Firma, so muss er die Änderungen zwischen seiner lokalen Kopie und der im Netzwerk befindlichen Version der Excel-Datei manuell suchen und seine Änderungen ebenso manuell in die Netzwerkversion eintragen.
Mittels Excel-Hilfstools wie dem Add-In Inquiry (siehe: www.office-kompetenz.de/excel-inquire-arbeitsmappen-untersuchen-fehler-finden/) kann man zumindest die Suche nach Unterschieden der beiden Dateien automatisieren. Es verbleibt jedoch die manuelle Kopie der neuen Daten in die Netzwerkversion der Datei.
Kennt ihr ein Tool, welches die Unterschiede niccht nur anzeigen lassen kann, sondern auch einzelne (oder alle) Änderungen von einer Datei automatisch (oder mit einem Klick) von einer Excel-Datei in die andere übernehmen kann? Sowas würde in diesem Szenario viel Zeit sparen helfen.

Viele Grüße,
Sinzal

Content-ID: 668507

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

Printed on: October 15, 2024 at 06:10 o'clock

ukulele-7
ukulele-7 Oct 01, 2024 updated at 09:25:54 (UTC)
Goto Top
Wie wäre es mit einem ERP System mit einem echten DBMS dahinter statt nur einer "Excel-Datenbank". Das ganze Konstrukt wäre mir mit Excel viel zu heikel. In SQL schreibe ich dir sofort ein Query das die Daten zusammen führt...

Natürlich kannst du dir auch in Excel ein Makro in VB schreiben das alleszusammen führt. Ohne VB glaube ich nicht, das es noch einfacher als jetzt möglich wäre. Vielleicht noch mit Powershell wenn keiner die Dateien geöffnet hat...
godlie
godlie Oct 01, 2024 updated at 10:36:09 (UTC)
Goto Top
Hallo,

vergiss das mit Excel, da hast du keine Freude auf längere Sicht.

Excel hat so die Angewohnheit, wenn die Datei von mehreren bearbeitet wird, dass es ab einer gewissen größe ( oder Wasserstand des nächstgelegenen Flusses ... ), einfach mal einiges oder alles vergisst.

Schau dir wie schon genannt ERP Systeme an, oder lasst euch was zusammenbasteln, ist mit c# und einer Datenbank ala PostgreSQL / MySql / CouchDB nicht die große Zauberei

grüße
GutesProvisorium
GutesProvisorium Oct 01, 2024 updated at 13:05:51 (UTC)
Goto Top
Wenn wirklich ein Lösung für Excel angestrebt wird: Ich nehme an, dass sowohl die Datei im Außendiesnt als auch die Datei im Innendienst geändert werden können, bevor sie zusammengeführt werden.

Da wäre mein Ansatz der folgende:
1. Die Tabelle braucht eine Spalte/Zeile mit einem primären key über den Datensätze (Zeilen/Spalte) erkannt werden können.

2. Es wird ein VBA Skript benötigt, dass bei "vom Netzwerklaufwerk abweichendem Dateipfad" alle Änderungen an der Datei loggt. Z.B. in eine Aenderungen.TXT Datei: jeweils Zeilen mit "WERT;SPALTE;KEY" oder jedes in eine eigene Zeile, ....

3. Es wird ein VBA Skript in der Hauptdatenband benötigt, dass bei "Dateipfad des Netzwerklaufwerkes"diese Aenderungen.TXT Datei wieder einließt und dann löscht oder verschiebt.

Der Außendienstler muss dann nur die Datei, die im Außendienst erstellt wurde in den Ornder der Primären Datei verschieben und das Skript frisst sie rein.

4. Es muss ein VBA Skript geben, dass neue Keys erstellt: In der Hauptdatei werden diese in neuen Zeilen automatisch erzeugt (z.B: fortlaufende Nummern) und im Außendiesnt wird ein die fortlaufende Nummer als Dummy markiert, sodass beim Zusammenführen ein korrekter key erstellt werden kann.

Technisch muss man hier etwas aufpassen, sodass ich immer auf Backups und wenn man obigen Weg wählt, auch ein kompletten Changelog raten würde - den bekäme man auf diesem Wege ohne großen Aufwand dazu geschenkt.

Wahrscheinlich ist eine kleine Datenbank schneller implementiert und die Daten importiert, als dass man sich das VBA Skript zusammengebastelt hat und soweit vertraut, dass es life gehen kann.
Ich kenne es aber nur zu gut, dass es Leute gibt, die weiter mit der bewährten Excel Tabelle arbeiten wollen.