Mehrzeiliges Feld einlesen und splitten

  • Hallo,
    für eine Tabelle muss ein Feld mit mehrzeiligen Inhalt eingelesen werden, beispielhaft so dargestellt:


    Abc Test | 1234
    Abd Test2 | 31234
    Abe Test3 | 14234


    Das Feld soll am Pipesymbol gesplittet werden und dann Zeile für Zeile in eine Tabelle geschrieben werden, ich benötige für die Tabelle jedoch nur die Daten auf der rechten Seite der Pipe.


    Code
    Dim textlist List As String
    
    
    textlist = doc.vaPPMATKL_Text ' ich versuche das Feld aus dem Dokument in eine Liste einzulesen, Fehler "Type Mismatch"	
    
    
    Forall items In doc.vaPPMATKL_Text 
    SplitOutput =  Split(items,"|")			 							End For


    Kann mir jemand weiterhelfen?
    (Die Struktur der Tabelle steht im Übrigen schon soweit, es geht nur um das korrekte einlesen)

    • Offizieller Beitrag

    hast du schon mal mit Script gearbeitet?


    Um welchen Feldtyp handelt es sich bei doc.vaPPMATKL_Text?


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • In SplitOutput hast du ja dann einen zwei-elementigen Array drinstehen wo das Element mit dem Zähler 1 dann jeweils dem rechten Teil entspricht.
    Musst es also nur innerhalb der Schleife weiterverarbeiten

  • Test gerade mit den Arrays herum, aber es will nicht klappen. Kann mir jemand sagen warum nichts in den textstring (der dann den Inhalt des Arrays enthalten soll) geschrieben wird?


    Code
    Dim mattexts(0) As String 	
    Dim textstring As String 	
    mattexts(0) = "doc.vaPPMATKL_Text" 				 				
    
    
    Dim c As Integer 
    For c = Lbound(mattexts) To Ubound(mattexts) 	
    If Cstr(doc.GetItemValue(mattexts(c))(0)) <> "" Then					 						textstring  = textstring +  Cstr(doc.GetItemValue(mattexts(c))(0)) 					End If 				Next c
  • Bitte schau doch mal in die Designer Hilfe. Dort findest du genau solche Beispiele.


    Denn so wie du das machst wird das nie gehen.


    Vor allem verstehe ich nicht wirklich was du da jetzt tust

    • Offizieller Beitrag

    Dein Feld gibt ein Array zurück und jedes Element in dem Array willst du in ein Array zerlegen.


    Also:


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein