Office: csv Import Tabelle mit viel Inhalt in einer Zelle

Helfe beim Thema csv Import Tabelle mit viel Inhalt in einer Zelle in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, ich habe bei mir auf Arbeit ein sehr altes Informationssystem in dem wir unser Aktenarchiv organisiert haben. In diesem Archivsystem sind... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Alexander_2401, 14. Oktober 2021 um 16:10 Uhr.

  1. csv Import Tabelle mit viel Inhalt in einer Zelle


    Hallo,

    ich habe bei mir auf Arbeit ein sehr altes Informationssystem in dem wir unser Aktenarchiv organisiert haben.
    In diesem Archivsystem sind Informationen enthalten wie der zeitliche Umfang der Akte, wer diese geführt hat und den Inhalt der Akte.
    Diese Informationen kann ich als csv exportieren. Allerdings ist der Inhalt der Spalte Akteninhalt teilweise sehr umfangreich gefüllt und sehr unterschiedlich geschrieben. Im Screenshot kann man sich ein Bild davon machen wie es aussieht. Es handelt sich um ca. 6000 Einträge.
    Ich möchte nun die Informationen in eine Exceltabelle überführen. Wenn ich den Export ohne den Akteninhalt mache klappt das super die csv in Excel zu importieren.
    Die csv mit Akteninhalt ist eine reine Katastrophe. Alles verschiebt sich und nichts kann mehr zugeordnet werden. Die Inhalte manuell zu übernehmen ist auf Grund des Umfangs eher auch keine Option.
    Ich habe die Möglichkeit zu steuern welche Spalten exportiert werden, jedoch müssen es immer mindestens zwei sein.
    Hat Jemand mit solch schwierigen Exporten bereits zu tun gehabt und kann mir helfen die Datei ordentlich aufzubereiten?
    Ich habe mal ein paar Einträge dieses Systems in ein Parallelsystem gepackt und verfremdet, damit man sich ein Bild davon machen kann und auch die entsprechenden Dummy-Exporte mit und ohne Akteninhalt sowie das Ergebnis in der Exceldatei mit angehangen.
     
  2. Lutz Fricke Erfahrener User
    Hallo Alexander,

    da sehe ich recht schwarz. Ohne viel Handarbeit und Prüfung gegen das Original geht da nichts...

    Als ersten Schritt würde ich vermutlich die Spalte B Filtern und die leeren Zellen ausblenden. Dann hast Du nur Zugangsnummern und Texte, die dort nicht hingehören. Diese Texte gehören in die darüberliegende Zeile ab Spalte H. Also manuell rüberschieben.
    Dann würde ich in Spalte B nur die leeren einblenden. Hier die texte aus Spalte A in Spalte G schieben.

    Dann sollte es grob passen. Aber wie oben gesagt, du musst natürlich gegen das Original prüfen.

    Ein anderer deutlich besserer Weg wäre, den Entwickler des Informationssystems zu bitten, den Datenexport in ordentlicher Form einzurichten *Klugscheißermodus aus*csv Import Tabelle mit viel Inhalt in einer Zelle *:D*.

    Gruß,
    Lutz
     
  3. DL_
    DL_ hat Ahnung
    Moin

    Das Problem ist aus meiner Sicht dass die fraglichen Daten in der falschen Zeile und in der falschen Spalte stehen.
    Damit hat man keine Chance eine automatische Zuordnung zu erreichen.
     
  4. Exl121150 Erfahrener User

    csv Import Tabelle mit viel Inhalt in einer Zelle

    Hallo,

    ich habe die Datei "Musterarchiv_komplet.txt" mit der "screenshot-archivsystem.jpg" verglichen und folgende Regelmäßigkeit gefunden:

    1) Öffne die Textdatei
    2) Lies aus der Textdatei die 1. Textzeile bis zum 1. CRLF in eine Textvariable ein. Zerlege diese mit dem ";" als Trennzeichen, um die Spaltenüberschriften und die Anzahl der Spalten (=AnzSp) zu erhalten im Excel-Arbeitsblatt.
    3) Gehe in Excel an den Anfang der nächsten Zeile, setze Spaltenzähler auf 1.
    4) Teste, ob das nächste Zeichen in der Textdatei ein CRLF ist:
    4a) Falls nicht, lies aus der Textdatei bis zum nächsten ";" (egal ob da CRLFs enthalten sind oder nicht) und gib diesen String in die aktuelle Excelzelle.
    4b) Gehe in die nächste Excel-Spalte (=Erhöhe Spaltenzähler um 1).
    5) Überprüfe, ob der Spaltenzähler > AnzSp ist: falls ja, gehe nach 3), falls nein, gehe nach 4)
    6) Falls in 4) das EOF erreicht ist, beende das Lesen und schließe die Textdatei.

    Voraussetzung, damit dies funktioniert, ist, dass zwischen den ";" als Feldtrennzeichen keine weiteren ";" innerhalb des eigentlichen Textes enthalten sind. In der übermittelten Textdatei ist diese Bedingung erfüllt.
     
  5. Exl121150 Erfahrener User
    Hallo,

    zur Beschreibung im letzten Posting folgt jetzt der VBA-Code.

    Dazu habe ich dir in einem allgemeinen Codemodul die SUB "Einlesen_CSV_Txt" eingefügt. Diese SUB enthält eine Pfad-Variable und eine Datei-Variable, die du unbedingt an deine Verhältnisse anpassen musst, damit das Makro deine Export-Textdatei finden kann. Diese Stellen habe ich deutlich gekennzeichnet.
    Das Trennzeichen ist der Strichpunkt.
    Code:
    Option Explicit
    Dim TxtZeile As String
    
    Sub Einlesen_CSV_Txt()
      Dim fs As Object          'New FileSystemObject
      Dim Txt As Object         'TextStream
      Dim Pfad As String, Datei As String
      Dim FeldBez() As String, Tr As String
      Dim Ws As Worksheet
      Dim Zl As Long, Sp As Long, AnzSp As Long
      Const ForReading As Long = 1
     
      Pfad = "S:\Dokumente\OfficeH\"                          '<-- Pfad zur Textdatei
      Datei = "Alexander2401_Musterarchiv_komplet.txt"        '<-- Textdateiname
      Tr = ";"                                                '<-- Trennzeichen in der Textdatei
     
      Set fs = CreateObject("Scripting.FileSystemObject")
      Set Txt = fs.OpenTextFile(Filename:=Pfad & Datei, IOMode:=ForReading)
      On Error GoTo End_Of_Proc
     
      Set Ws = ActiveSheet                              '<-- Import ins aktive Arbeitsblatt
      Ws.Cells.NumberFormat = "@"                       '<-- alle Zellen als Text formatieren
     
      TxtZeile = Txt.ReadLine
      FeldBez = Split(TxtZeile, Tr): AnzSp = UBound(FeldBez, 1) + 1
      Zl = 1
      For Sp = 1 To AnzSp
          Ws.Cells(Zl, Sp) = FeldBez(Sp - 1)
      Next Sp
     
      TxtZeile = ""
      Do
          Zl = Zl + 1: Sp = 1
          Do
             Ws.Cells(Zl, Sp).Value = GetNxtText(Txt, ";", Sp = AnzSp)
             Sp = Sp + 1
          Loop While Sp <= AnzSp
      Loop
    End_Of_Proc:
      Txt.Close
      Set Txt = Nothing
      Set fs = Nothing
    End Sub
    
    Function GetNxtText(Txt As TextStream, Tr As String, EOL As Boolean) As String
      Dim Ps As Long
      Do
        If EOL Then TxtZeile = Replace(TxtZeile, vbNewLine, Tr, , 1)
        Ps = InStr(TxtZeile, Tr)
        If Ps Then
           GetNxtText = Left(TxtZeile, Ps - 1): TxtZeile = Mid$(TxtZeile, Ps + 1)
           Exit Function
        Else
           TxtZeile = TxtZeile & Txt.ReadLine & vbNewLine
        End If
      Loop
    End Function
    
    Aufgerufen wird das Makro durch die Tastenkombination Alt+F8 und anschließendem Ausführen der SUB "Einlesen_CSV_Txt".
    Der Import nach Excel erfolgt jeweils im aktiven Arbeitsblatt, wobei alle Zellen als Text formatiert werden.
    Weiters ist in deiner Datei jede Menge Kommentar zum leichteren Verständnis enthalten.
     
Thema:

csv Import Tabelle mit viel Inhalt in einer Zelle

Die Seite wird geladen...
  1. csv Import Tabelle mit viel Inhalt in einer Zelle - Similar Threads - csv Import Tabelle

  2. Benutzerdefinierte Felder lassen sich nicht zuordnen. Outlook 365

    in Microsoft Outlook Hilfe
    Benutzerdefinierte Felder lassen sich nicht zuordnen. Outlook 365: Moin, homeofficebedingt wollte ich mal die Zeit nutzen meine Kontakte, die sonst an anderer Stelle verwaltet werden einheitlich in Outlook zu importieren. Anleitung gegoogelt, gefunden, befolgt...
  3. PQ: CSV-Importe aus Ordner (Dateiname in Spalte)

    in Microsoft Excel Hilfe
    PQ: CSV-Importe aus Ordner (Dateiname in Spalte): Hallo zusammen, ein PowerShell-Script fragt Domänen-PCs nach einem bestimmten Treiber mittels dem Befehl driverquery ab und piped das Ergebnis in eine CSV. je PC gibt es eine CSV je CSV 3...
  4. CSV Import: Zellen formatieren

    in Microsoft Excel Hilfe
    CSV Import: Zellen formatieren: Hallo zusammen, ich importiere mit der Methode QueryTables.Add in einer Schleife mehrere identisch aufgebaute CSV Dateien in eine Arbeitsmappe. Dabei wird für jede Datei ein neues Tabellenblatt...
  5. regelmäßiger import aus csv-Datei in mehrere verknüpfte Tabellen

    in Microsoft Access Hilfe
    regelmäßiger import aus csv-Datei in mehrere verknüpfte Tabellen: Hallo, bin Anfänger und Suche Informationen zu folgendem Problem: Wir verkaufen Artikel bei ebay. Unser Mailprogramm beinhaltet eine Funktion zum extrahieren von Käuferdaten, wie Käufername,...
  6. Excel Formatierungsproblem CSV Import?

    in Microsoft Excel Hilfe
    Excel Formatierungsproblem CSV Import?: Hallo! Ich arbeite mit Keywordlisten von Sonar (ein Keyword Search Tool) und habe bei dem öffnen der Datei in Excel ein ziemlich blödes Problem mit der Formatierung. Das Problem habe ich nur...
  7. Probleme beim Import einer *.csv-Datei nach Kontakte(Outlook) Office 2016

    in Microsoft Outlook Hilfe
    Probleme beim Import einer *.csv-Datei nach Kontakte(Outlook) Office 2016: Hallo Community, ich wollte eine CSV-Datei nach Outlook/Kontakte importieren. Die Datei hat ',' als Trennzeichen wie empfohlen (siehe...
  8. Import CSV / Überprüfung Feldnamen Quelldatei CSV / Zieldatei: Access Tabelle

    in Microsoft Access Hilfe
    Import CSV / Überprüfung Feldnamen Quelldatei CSV / Zieldatei: Access Tabelle: Hallo, ich möchte gerne beim Import einer CSV - Datei (eingebettet in ein VBA Modul / Import-Spezifikation ist angegeben) überprüft wissen, ob die Feldnamen der Quelldatei identisch ist mit den...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden