Access 2013 Textfelder zusammenführen und verbunden bearbeiten
Hallo zusammen,
meine Museums-Datenbanken haben ihren Ursprung in Zeiten von DOS und dBase, als die Lösung für längere Texte darin bestand, diese in mehrere kurze Textfelder aufzuteilen. Ich weiss, dass ich meine 6 Textstrings =[MEMO1] & " ; " & [MEMO2] & " ; " & [MEMO3] & " ; " & [MEMO4] & " ; " & [MEMO5] & " ; " & [MEMO6] verbinden und im Formular in ein Sammelfeld ausgeben kann. Dies hilft z.B. für Suchzwecke.Jetzt möchte ich aber fragen,ob es auch eine Möglichkeit gibt, die Daten so in ein langes Textbearbeitungsfeld zu importieren. In meinem Formular würde dann nur noch dieses Feld anbieten anstelle der 6 alten Bearbeitunsfeld plus Anzeigefeld.
Kennt sich da jemand aus?
meine Museums-Datenbanken haben ihren Ursprung in Zeiten von DOS und dBase, als die Lösung für längere Texte darin bestand, diese in mehrere kurze Textfelder aufzuteilen. Ich weiss, dass ich meine 6 Textstrings =[MEMO1] & " ; " & [MEMO2] & " ; " & [MEMO3] & " ; " & [MEMO4] & " ; " & [MEMO5] & " ; " & [MEMO6] verbinden und im Formular in ein Sammelfeld ausgeben kann. Dies hilft z.B. für Suchzwecke.Jetzt möchte ich aber fragen,ob es auch eine Möglichkeit gibt, die Daten so in ein langes Textbearbeitungsfeld zu importieren. In meinem Formular würde dann nur noch dieses Feld anbieten anstelle der 6 alten Bearbeitunsfeld plus Anzeigefeld.
Kennt sich da jemand aus?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 224017
Url: https://administrator.de/forum/access-2013-textfelder-zusammenfuehren-und-verbunden-bearbeiten-224017.html
Ausgedruckt am: 13.05.2025 um 15:05 Uhr
10 Kommentare
Neuester Kommentar
Hallo,
Das solltest du dir genauer ansehen was du für Suchenmöglichkeiten und geschwindigkeiten benötigst und ob du ganze Zeichenketten wirklich effektiver einsetzen kannst.
Gruß,
Peter
Das solltest du dir genauer ansehen was du für Suchenmöglichkeiten und geschwindigkeiten benötigst und ob du ganze Zeichenketten wirklich effektiver einsetzen kannst.
Jetzt möchte ich aber fragen,ob es auch eine Möglichkeit gibt, die Daten so in ein langes Textbearbeitungsfeld zu importieren.
Generell, Ja.Kennt sich da jemand aus?
Womit?Gruß,
Peter
Hallo,
warum machst du nicht eine entsprechende Abfrage die alle Memo-Felder in einer Spalte zusammenfasst, so wie hier erläutert:
http://www.techonthenet.com/access/queries/concatenate.php
Dann kannst du entweder diese Abfrage als Quelle für dein Formular verwenden oder am besten das ganze direkt in eine neue Tabelle wandeln, und schon hast du keine Probleme mehr.
Grüße Uwe
warum machst du nicht eine entsprechende Abfrage die alle Memo-Felder in einer Spalte zusammenfasst, so wie hier erläutert:
http://www.techonthenet.com/access/queries/concatenate.php
Dann kannst du entweder diese Abfrage als Quelle für dein Formular verwenden oder am besten das ganze direkt in eine neue Tabelle wandeln, und schon hast du keine Probleme mehr.
Grüße Uwe
Moin MuseumML,
willkommen im Forum.
Wenn du in deiner Tabelle ein Feld "langerText" eingefügt hast hast, dann reicht doch ein
Falls mal das eine oder andere MEMOx-Feld auch leer sein kann, dann
Wo ist das Problem?
Grüße
Biber
willkommen im Forum.
Wenn du in deiner Tabelle ein Feld "langerText" eingefügt hast hast, dann reicht doch ein
UPDATE Museumskrams
set langerText = Rtrim(Memo1) & ";" & Rtrim(Memo2) & ";" & Rtrim(Memo3) & ";"
& Rtrim(Memo4) & ";" & Rtrim(Memo5) & ";"& Rtrim(Memo6)
where (1=1);
Falls mal das eine oder andere MEMOx-Feld auch leer sein kann, dann
UPDATE Museumskrams
set langerText = IIf (len(Rtrim(Memo1)) > 0, Rtrim(Memo1) & ";" ,"")
& IIf (len(Rtrim(Memo2)) > 0, Rtrim(Memo2) & ";" ,"")
& IIf (len(Rtrim(Memo3)) > 0, Rtrim(Memo3) & ";" ,"")
& IIf (len(Rtrim(Memo4)) > 0, Rtrim(Memo4) & ";" ,"")
& IIf (len(Rtrim(Memo5)) > 0, Rtrim(Memo5) & ";" ,"")
& IIf (len(Rtrim(Memo6)) > 0, Rtrim(Memo6) & ";" ,"")
where (1=1);
Wo ist das Problem?
Grüße
Biber
Hallo MusemsML

fügst den SQL-Code von @Biber im erscheinenden Textbereich ein und passt den Tabellennamen hinter UPDATE, den neuen Spaltennamen hinter SET und die Feldnamen(Memo1,Memo2,etc) an deine verwendeten Spaltennamen an:
Wenn alles richtig ist, klickst du oben in der Tab-Leiste auf Ausführen, dann wird deine Tabelle mit der neuen Spalte aktualisiert.
Grüße Uwe
Zitat von @MuseumML:
War es richtig, obige zweite Variante in den Textgenerator von Steuerelementinhalt des langen Textfeldes
einzutrage?
Nein, du musst eine Abfrage erstellen, dann stellst du die Ansicht dieser auf SQL umWar es richtig, obige zweite Variante in den Textgenerator von Steuerelementinhalt des langen Textfeldes
einzutrage?

fügst den SQL-Code von @Biber im erscheinenden Textbereich ein und passt den Tabellennamen hinter UPDATE, den neuen Spaltennamen hinter SET und die Feldnamen(Memo1,Memo2,etc) an deine verwendeten Spaltennamen an:
UPDATE DeinTabellennamen
SET deineNeueSpalte = IIf (len(Rtrim(Memo1)) > 0, Rtrim(Memo1) & ";" ,"")
& IIf (len(Rtrim(Memo2)) > 0, Rtrim(Memo2) & ";" ,"")
& IIf (len(Rtrim(Memo3)) > 0, Rtrim(Memo3) & ";" ,"")
& IIf (len(Rtrim(Memo4)) > 0, Rtrim(Memo4) & ";" ,"")
& IIf (len(Rtrim(Memo5)) > 0, Rtrim(Memo5) & ";" ,"")
& IIf (len(Rtrim(Memo6)) > 0, Rtrim(Memo6) & ";" ,"")
where (1=1);
Grüße Uwe
[OT] @colinardo
kaum bin ich mal kurz einen Cappuccino trinken, kommt eine Rückfrage.
Danke für's Einspringen!
Grüße
Biber
[/OT]
kaum bin ich mal kurz einen Cappuccino trinken, kommt eine Rückfrage.
Danke für's Einspringen!
Grüße
Biber
[/OT]
Zitat von @MuseumML:
Bei Ausführen kommt die Meldung "Undefinierte Funktion Rtrim in Ausdruck"
-> Frust !
Heißen deine Spalten in der Tabelle wirklich Memo1, Memo2,etc ?Bei Ausführen kommt die Meldung "Undefinierte Funktion Rtrim in Ausdruck"
-> Frust !
Hier geht es bei einem Test problemlos.
Ansonsten schreib es mal ganz simpel ohne Funktionen so
UPDATE Dessins
set MemoLang = Memo1 & ";" & Memo2 & ";" & Memo3 & ";" & Memo4 & ";" & Memo5 & ";" & Memo6
where (1=1);
--edit--
es könnte sich auch um diesen BUG handeln, der auch in neueren Versionen immer mal wieder auftritt:
Grüße Uwe