Variablen aus CSV Datei in Excel einfügen

  • Excel

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von Ambl.

    Variablen aus CSV Datei in Excel einfügen

    Hallo,

    gibt es eigentlich bei Excel eine Möglichkeit, Variablen aus einer .CSV Datei in Excel einzulesen?!
    ​Ich meine so wie bei Word... über EINFÜGEN - SCHNELLBAUSTEINE - FELD - MergeField....

    ​Mei Problem:

    ​Ich sollte aus einer solchen Datei, eine bestimmte Variable z.B. Variable "ORT" den dazugehörigen Wohnort (z.B. Stuttgart) in Excel einfügen!

    ​Vielen Dank schon mal für die Hilfe!!

    ​Viele Grüße
    Moin,
    ich musste erst einmal ein wenig Rätseln, was Du genau willst; ansatzweise sicher bin ich mir aber immer noch nicht.

    Deshalb erstmal eine Nachfrage.

    Wie ist die CSV-Datei aufgebaut ?
    Streng strukturiert ? Also, so:

    Name; Ort
    Müller; Berlin

    oder Fließtext,
    Herr Müller wohnt im Ort Ulm.

    oder ein Misch
    Name: Müller
    Ort: Ulm
    Name: Maier
    Ort: Köln

    Hilfreiche Antworten als solche zu Kennzeichnen wäre klasse 8-)
    Hallo,

    Danke schon mal für deine Antwort!

    Die Variablen sind durch TAB getrennt

    VORNAM |TAB| NACHNAM | TAB | STRASSE | TAB |......
    Uwe | TAB | MÜLLER | TAB | Albuchweg | TAB | ......

    Er zeigt Die Daten in Excel an... und ich kann Sie in die Tabelle einfügen!
    Aber ich will ja EINZELNE Variablen heraus lesen!

    Viele Grüße

    Ambl

    Ambl schrieb:

    Aber ich will ja EINZELNE Variablen heraus lesen!


    Also ok, Du hast dann also ein Excelblatt, indem die Daten enthalten sind ? Gut ist es dann auch eine Exceldatei anzulegen und das Text-File zu importieren. Weniger gut ist es das als CSV Datei direkt zu öffnen. Dann hast Du nämlich im Normalfall Deine Makros oder Deinen Quellcode nicht zur Verfügung. Wenn Du dann die Abfrage auf die TXT-Datei auch noch in dem Excelfile speicherst, kannst Du jedesmal die Daten aktualisieren, auch automatisiert...
    So, das vorweg.

    Kommen wir zum Begriff Variable. Ich vermute Du meinst damit ein spezifisches Feld in einem Datensatz ? Also Zeile Nr4, Spalte Nr5 ? Also den Inhalt einer oder mehrerer Zeilen ? Dann stellt sich natürlich die Frage, wie Du diese identifizieren/markieren möchtest.... Also, ist es ein bestimmer Inhalt, den Du benötigst oder vielleicht genau die Zeile XYZ ???

    Dann die nächste Frage. Wo sollen denn die zu ermittelnden Inhalte/Daten/Werte erscheinen ?

    In einer anderen Zelle oder am Anfang eines Blattes oder als Workbook Titel ???

    Wenn Du die Werte zweier Zellen verbinden willst, dann brauchst Du dafür lediglich eine Excelformel in die Zelle zu schreiben: =C4 & " " & D4

    Willst Du hingegen nur Werte ermitteln, die eine bestimmte Kennzeichnung haben, dann musst Du mit der Formel =SVERWEIS() arbeiten. Aber das ist dann wirklich das falsche Forum..
    Hilfreiche Antworten als solche zu Kennzeichnen wäre klasse 8-)
    Hallo,

    also hier noch mal genau erklärt :)

    In Word kann ich über

    Quellcode

    1. ActiveDocument.MailMerge.MainDocumentType = wdFormLetters
    2. ActiveDocument.MailMerge.OpenDataSource ("C:\temp\mischdatei.dip")


    Die Variablendatei öffnen! Wie schon geschrieben, sind die Variablen durch TABSTOPS begrenzt!

    In Word kann ich dann aus der Variablendatei eine Variable holen und zuordnen

    Quellcode

    1. Dim vFamnam as String
    2. vFamnam = ActiveDocument.MailMerge.DataSource.DataFields("FAMNAM").Value


    Dann nehme ich die Variable und schreibe sie an eine Bestimmte Stelle im Text (=Textmarke)

    Quellcode

    1. Selection.GoTo What:=wdGoToBookmark, Name:="tmFamilienname" 'gehe zur Textmarke tmFamilienname
    2. Selection.TypeText Text:=vFamnam 'Schreibe den Namen


    Wie gesagt, ich will die Datei NICHT IMPORTIEREN sondern nur eine bestimmt Variable z.B. Famnam aus dieser Datei einer Zelle (zb C4) zuordnen und da den Famnam rein schreiben (zb Maier)
    Geht das überhaupt in Excel??

    Wie gesagt, bei Excel werden die Variablen beim Textkonvertierungs - Assistent richtig angezeigt! Aber ich will die Datei ja nicht EINFÜGEN sondern nur einzelne Variablen heraus lesen!!



    Ist dies nicht möglich, so wie bei Word??

    LG Ambl
    Du verwechselst Variablen mit Daten.
    In Deiner Definitionsdatei, werden Feldnamen als Variablen benannt, aber im Prinzip sind es eben Feldnamen/Spaltennamen. Aber nach der Ausgabe, also dem Einlesen der Datei, hast Du Daten und eben keine Definitionen/Variablen/Spaltennamen/Feldnamen mehr. Wie willst Du also solche Daten kennzeichnen, damit sie irgendwo hingeschrieben werden ?? Das geht schon logisch nicht.

    Mach es so wie ich es Dir beschrieben habe. Dann bist Du in 10 Minuten fertig. Ich bin raus hier. Sorry.
    Hilfreiche Antworten als solche zu Kennzeichnen wäre klasse 8-)
    Das ist ja DIE Frage ALLER FRAGEN.... ?(

    ​Nööö... die Datei hat ca. 100 Felder und ich will zB. nur den "Feldnamen" oder wie auch man das immer nennen mag.....ZSAPLZ = 73033 ... (siehe Bild oben) auslesen und die Zahl (73033)
    ​ist die Postleitzahl... in Zelle S4 schreiben.....

    ​In Word kann ich dies über MergeField... (Siehe Oben)... wie geht das in Excel!!!
    Hallo,

    sVerweis und Co funktionieren nur zuverlässig mit einem einmaligen Index-/ID-Feld. In dem "Word-Spalten -Thema" wird erwähnt, dass es über Hundert Einträge von Bewerbern sein sollen / werden. Ein Ort hat heute oft mehrere Postleitzahlen. "Michael Müller aus München" kann auch mehrmals vorkommen. Telefonnummer oder Email-Adresse eignet sich als ID-Feld, wenn bei allen Einträgen vorhanden. Ich selbst nutze oft eine Spalte mit fortlaufenden Zahlen als ID-Feld.

    Ich persönlich würde bei Excel bleiben. Sind alle Daten in einer CSV-Datei, dann kann man die aber prima mit VBA auslesen, sortieren, filtern. Je nach Umfang "zu Fuß" oder erst alles in eine Datenbank reinkopieren und diese die Fleißarbeit machen lassen. - Oder man importiert die CSV-Datei einfach in eine Excel-Tabelle und erledigt das ohne VBA. - Was ist gewünscht? Was soll am Ende dabei rauskommen / mit den Daten geschehen?

    Egal, welcher Weg genutzt wird, ein eindeutiger Index wird auch dabei benötigt, wenn ich "automatisch" (z.B. per sVerweis) was wiederfinden möchte. Steht der Index nicht links, nutzt man z.B. Index und Vergleich oder baut sich eine Hilfsspalte.
    Gruß
    Peterfido

    Keine Unterstützung per PN!
    Wollte nur kurz schreiben, dass ich es gelöst habe!! Falls jemand mal das gleiche Problem hat :)

    Habe die CSV-Datei in ein weiteres Tabellenblatt eingefügt und hole die Daten über "RANGE" in das erste Tabellenblatt!!

    DANKE trotzdem für eure Hilfen.... LG Ambl