MS-Office-Forum
Google
   

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads Der Renner, 11 Entwicklertools für Access, Tipps & Trick und offene Datenbanken zum einzigartigen Preis.
Themen-Optionen Ansicht
Alt 12.04.2018, 13:24   #1
wernerz
MOF User
MOF User
Standard Frage - Zwei csv-Dateien vergleichen

Hi,
ich suche gerade einen Ansatz für mein Problem:
Ich habe zwei csv dateien, die ich vergleichen will.

Dabei wird die Datei 1 gegen die Datei 2 verglichen. Datei 1 wird immer wieder neu durch ein Programm erstellt.
Hier mal ein Beispiel:
Datei 1.
id, Name, Straße, Ort
10, Ralf, Hauptstraße 12, Hamburg
18, Stefan, Hintere Str. 8, Berlin
33, Norbert, Irgendwo 5, Hintertupfingen

Datei 2:
id, Name, Straße, Ort
10, Ralf, Hauptstraße 12, Hamburg
17, Jonas, Baumstraße 1, München
33, Norbert, Am Deich 7, Hamburg

Als Ergebnis benötige ich eine Liste mit den unterschieden zwischen Datei 1 und Datei 2.
Es gibt drei Varianten:
a) fehlende Einträge (hier Nummer 17)
b) neue Einträge (18)
c) geänderte Werte (33)

Und ja, Trennzeichen ist das ", ", da ich die Datei2 in einem anderen Programm noch weiter verarbeiten muss, dort wird zwingend das , erwartet als Trennzeichen benötigt.

Eine Idee, und darum poste ich das hier, wäre die Dateien in Excel ein zu lesen, dort mit vba zu verarbeiten und dann wieder eine neue Datei2.csv zu schreiben.

gruß Werner

__________________

Gruß Werner

ACC2010, Win 7
wernerz ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.04.2018, 16:28   #2
ASE
MOF Profi
MOF Profi
Standard Zu wenig Daten

Hallo Werner,
1. Wenn Du csv Daten einlesen möchtest und die vergleichen ist das kein Problem.
2. Natürlich musst Du mindestens 2 csv Dateien "lieferen", den die baue ich nicht nach. Sind da wirklich nur so wenig Spalten nötig? Wenn nicht müssen alle Spalten in das Muster sein!
3. Ist Dir bewust das die ID einmalig sein muss!!!
Also heute komme ich nicht mehr dazu, aber morgen kannst Du mit mir rechnen.

__________________

Ein gern wiederholter Tipp: Das Hochladen einer Beispieldatei, in der zu sehen ist, wie das Ergebnis aussehen soll, ist immer hilfreich und spart Zeit und Rückfragen!

Grüße aus Nürnberg
Armin
Ich benutze WIN 10 und Office 13
..Wenn alle Fragen geklärt sind, das Thema bitte als "erledigt" markieren....
Bewertung nicht vergessen, danke.
ASE ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.04.2018, 17:51   #3
Drogist
MOF User
MOF User
Standard

Mon Werner,
das sollte mit Power Query machbar sein.

__________________

Internette Grüße
Drogist

(Gut) Gefunden bei Storax: "This isn't a code writing service, you need to do some research and have a go at writing some of your own code."
Ich verwende Excel 2016. Wenn du keine Angaben über deine Version gemacht hast gehe ich davon aus, dass auch du mindestens diese Version hast.
Drogist ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.04.2018, 06:27   #4
wernerz
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hallo Armin,

vielen Dank für dein Angebot.
Zwei csv-Dateien habe ich, die benötige ich ja für meine tests sowieso. Die habe ich dir hier zum Download abgelegt:
http://z750twin.de/zeug/testdaten1.csv
http://z750twin.de/zeug/testdaten2.csv

Ja die IDs sind auf jeden Fall einmalig, ansonsten hätte ich bei der Weiterverarbeitung echte Probleme.
Und auch die Namen sind einmalig, falls es dir hilft.

Und wenn es heute nichts wird, dann so wie du zeit hast. Wäre ja noch schöner, wenn du dir schon die Arbeit machst, dass ich dann auch noch Zeiten vorschreibe.

Hier das Ergebnis was bei dem Vergleich raus kommen muss:
a) fehlende Einträge (Nummer 155)
b) neue Einträge (355)
c) geänderte Werte (88 und 1004)

Danke schon mal
gruß Werner

__________________

Gruß Werner

ACC2010, Win 7
wernerz ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.04.2018, 11:12   #5
ASE
MOF Profi
MOF Profi
Standard Frage

Hallo Werner,
habe noch etwas vergessen. Die csv-Dateien liegen im gleichen Verzeichnis des Auswertungs-Sheets? Oder?
Haben die csv immer den gleichen Namen oder wie soll das gehändelt werden?

__________________

Ein gern wiederholter Tipp: Das Hochladen einer Beispieldatei, in der zu sehen ist, wie das Ergebnis aussehen soll, ist immer hilfreich und spart Zeit und Rückfragen!

Grüße aus Nürnberg
Armin
Ich benutze WIN 10 und Office 13
..Wenn alle Fragen geklärt sind, das Thema bitte als "erledigt" markieren....
Bewertung nicht vergessen, danke.
ASE ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.04.2018, 12:29   #6
wernerz
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hi Armin,
so wie es am einfachsten ist, ich kann mir die Dateien dann umbenennen bzw. Verschieben wenn ich es anders haben will.
Normal haben die beiden Dateien aber immer den gleichen Namen und liegen auch alle in einem Verzeichnis.

__________________

Gruß Werner

ACC2010, Win 7
wernerz ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.04.2018, 13:02   #7
ebs17
MOF Guru
MOF Guru
Standard

Zitat:

Hier das Ergebnis was bei dem Vergleich raus kommen muss:
a) fehlende Einträge (Nummer 155)
b) neue Einträge (355)
c) geänderte Werte (88 und 1004)

Was ist das eigentliche Ziel des Vergleiches? Sollen die genannten Unterschiede dokumentiert werden (wie, wozu), oder soll Datei2 entsprechend gleich aktualisiert werden?

Für den zweiten Fall: Standard-CSV's lassen sich als Datenbanktabellen per SQL lesen und mit einigen Einschränkungen auch schreiben. Wie dass selber in SQL aussehen kann, wäre z.B. hier ersichtlich: Grundlagen - SQL ist leicht (4) - Aktualisierung einer Tabelle

__________________

Ein freundliches Glück Auf!

Eberhard

Abfrageperformance ist kein Geheimnis
SQL ist leicht: {0}:{1}:{2}:{3}:{4}:{5}:{6}:{7}:{8}:{9}:{10}
Dein Dankeschön: DBWiki=>Spende
ebs17 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.04.2018, 13:28   #8
wernerz
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hi Eberhard,
die Änderungen werden georeferenziert und dann wird eine weitere Datei erstellt, welche als Datengrundlage für eine Karte dient.
Da das ganze so automatisch wie möglich ablaufen soll, ist die Extraktion der Änderungen wichtig um die Last für den referenzierungsdienst möglichst niedrig zu halten, bzw wenn manuell referenziert werden muss, die Arbeit möglichst zu vereinfachen.

__________________

Gruß Werner

ACC2010, Win 7
wernerz ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.04.2018, 18:15   #9
ASE
MOF Profi
MOF Profi
Standard Erster Versuch

Hallo Werner,
hier ein Versuch. Beachte den Kommentar im Sheet.
Ich konnte heute leider nur mit größeren Pausen daran arbeiten deshalb hat es etwas gedauert.
Angehängte Dateien
Dateityp: xlsm Vergleich.xlsm (32,2 KB, 8x aufgerufen)

__________________

Ein gern wiederholter Tipp: Das Hochladen einer Beispieldatei, in der zu sehen ist, wie das Ergebnis aussehen soll, ist immer hilfreich und spart Zeit und Rückfragen!

Grüße aus Nürnberg
Armin
Ich benutze WIN 10 und Office 13
..Wenn alle Fragen geklärt sind, das Thema bitte als "erledigt" markieren....
Bewertung nicht vergessen, danke.
ASE ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.04.2018, 18:35   #10
wernerz
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hi Armin,

erstmal vielen, vielen Dank.
Brauchst dich nicht zu entschuldigen, ich habe ja gesagt, dass du alle zeit der Welt hast. Ich habe mal kurz rein geschaut, da hast du ja ordentlich gewütet. Viel mehr wie ich erwartet habe. Ich werde übers Wochenende wahrscheinlich nicht dazu kommen deine Funktionen ausgiebig zu testen. Also Bitte nicht böse sein, wenn ich jetzt ein paar Tage kein Feedback geben kann.
ich melde mich nach weiteren Tests auf jeden Fall wieder.
Schönes Wochenende und vielen Dank schon mal.

__________________

Gruß Werner

ACC2010, Win 7
wernerz ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 16.04.2018, 13:45   #11
wernerz
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hi Armin,
zwei Sachen sind mir beim Testen aufgefallen, die ich gerne anders hätte.
a) Du löschst nach dem Einlesen die 1er Datei. Das hätte ich gerne als Abfrage, bzw. als Kommentarzeile erklärt wo ich das ein/ausschalten kann, damit ich selbst bestimmen kann ob er die löschen soll.
b) Du schreibst erst die neuen Daten in die Datei: "NEUE_Master.csv" und benennst die Datei dann in die 2er Datei um. Ich möchte aber erstmal die alte 2er Datei behalten.

Ich habe zwar selbst versucht dein Makro entsprechend zu modifizieren, bin aber gescheitert.

Wäre echt nett, wenn du das noch anpassen könntest, oder zumindest ne Kommentarzeile hin zu fügen, wo das passiert, dass ich es mir einstellen kann wie ich es brauche.

Letzte Frage:
Wie sieht es aus mit dem Urheberrecht? Wenn mich jemand fragt ob ich das Excel-Makro weiter geben darf, wie stehst du dazu?

Ansonsten haben meine Tests keine Probleme ergeben. Super.
Vielen Dank nochmal, so eine hilfe ist echt nicht selbstverständlich.
Werner

__________________

Gruß Werner

ACC2010, Win 7
wernerz ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 16.04.2018, 15:23   #12
ASE
MOF Profi
MOF Profi
Standard Änderungen

Hallo Werner,
a) Ich lösche die 1er Datei nicht. Ich finde jedenfalls im Code keine Stelle wo das geschieht.
b) Habe ich etwas überarbeitet.
Bei Abbrechen passiert nix; Bei NEIN wird die Masterdatei erzeugt und die alte Datei (heißt jetzt Master.csv) bleibt wie sie ist. Bei JA wird Masterdatei gelöscht und neu geschrieben.

Also noch einmal die Ausgangsdateinen Master.csv = alte *2.csv !
Eeine neue Datei irgendwas1Neu.csv
Die temporäre Datei Master_NEU.csv

Ich hoffe jetzt haben wir es.
Angehängte Dateien
Dateityp: xlsm Vergleich.xlsm (35,6 KB, 2x aufgerufen)

__________________

Ein gern wiederholter Tipp: Das Hochladen einer Beispieldatei, in der zu sehen ist, wie das Ergebnis aussehen soll, ist immer hilfreich und spart Zeit und Rückfragen!

Grüße aus Nürnberg
Armin
Ich benutze WIN 10 und Office 13
..Wenn alle Fragen geklärt sind, das Thema bitte als "erledigt" markieren....
Bewertung nicht vergessen, danke.
ASE ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.04.2018, 11:02   #13
wernerz
Threadstarter Threadstarter
MOF User
MOF User
Standard

Hi,
leider funktioniert die neue Datei schlechter als die alte.
a) er findet nicht immer alle Änderungen. manche findet er, manche nicht. Ein System konnte ich jetzt nicht nachvollziehen.
b) wenn ich auf Ja bei der Abfrage klicke, kommt Laufzeitfehler '53' Datei nicht gefunden. Und er Debugger springt in die zeile: Kill Pfad & FNM

Und ja, deine erste Version löscht bei mir die 1er Datei. Warum? Keine Ahnung, habe auch keinen entsprechenden Befehl gefunden, aber es ist definitiv so.

__________________

Gruß Werner

ACC2010, Win 7
wernerz ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.04.2018, 12:11   #14
ASE
MOF Profi
MOF Profi
Standard ????

Hallo Werner,
bitte schicke mir mal die csv-Dateien wo dieser Fehler auftritt da kann ich den Fehler besser eingrenzen.

__________________

Ein gern wiederholter Tipp: Das Hochladen einer Beispieldatei, in der zu sehen ist, wie das Ergebnis aussehen soll, ist immer hilfreich und spart Zeit und Rückfragen!

Grüße aus Nürnberg
Armin
Ich benutze WIN 10 und Office 13
..Wenn alle Fragen geklärt sind, das Thema bitte als "erledigt" markieren....
Bewertung nicht vergessen, danke.
ASE ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.04.2018, 18:22   #15
ASE
MOF Profi
MOF Profi
Standard 2.Versuch

Hallo Werner,
also jetzt habe ich noch etwas geändert. Das Master.csv muss vorhanden sein!
Alles andere ist jetzt etwas einfacher. Das zu testende File kannst jetzt beliebig heißen und wird ausgewählt über einen Dialog. Die File die Du mir schicken wolltest konnte ich nicht runterladen "N0 File Found" war der Hinweis. Ich habe es jetzt auch ohne, denke ich verbessert.
Also bitte, teste noch einmal.


PS: ich bin jetzt nur noch morgen erreichbar, dann bin ich ca. eine Woche nicht Online.
Angehängte Dateien
Dateityp: xlsm Vergleich.xlsm (41,8 KB, 3x aufgerufen)

__________________

Ein gern wiederholter Tipp: Das Hochladen einer Beispieldatei, in der zu sehen ist, wie das Ergebnis aussehen soll, ist immer hilfreich und spart Zeit und Rückfragen!

Grüße aus Nürnberg
Armin
Ich benutze WIN 10 und Office 13
..Wenn alle Fragen geklärt sind, das Thema bitte als "erledigt" markieren....
Bewertung nicht vergessen, danke.
ASE ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:01 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2010 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günther Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.
Beachten Sie bitte auch unsere Nutzungsbedingungen.