Wie kann man ein Access RTF Format im Nur Text Feld - in Excel order Word exportieren
Hallo,
ich habe eine alte Access .mdb Datei und kann diese mit Access 2013 öffnen.
Jetzt habe ich in einer Tabelle eine Spalte XY mit Datentyp "Langer Text" und Textformat "Nur Text".
In dieser Spalte wurden aber Texte im RTF Format gespeichert.
Frage:
Wie kann ich diese Spalte exportieren so das das RTF-Format beim Export z.B. in Excel oder Word lesbar rauskommt?
In Access kann ich zwar unter Externe Daten --> Exportieren die Tabelle in Word oder Excel exportieren, aber die "Nur Text" Spalte mit der RTF Formatierung ist dann nicht leserlich sonder 1:1 exportiert.
Kennt jemand eine Trick wie ich beim exportieren das RTF lesbar bekomme?
Order kann ich in Access die Spalte in eine andere Spalte oder Tabelle konvertiert und lesbar abspeichern?
Besten Dank.
Rene
ich habe eine alte Access .mdb Datei und kann diese mit Access 2013 öffnen.
Jetzt habe ich in einer Tabelle eine Spalte XY mit Datentyp "Langer Text" und Textformat "Nur Text".
In dieser Spalte wurden aber Texte im RTF Format gespeichert.
Frage:
Wie kann ich diese Spalte exportieren so das das RTF-Format beim Export z.B. in Excel oder Word lesbar rauskommt?
In Access kann ich zwar unter Externe Daten --> Exportieren die Tabelle in Word oder Excel exportieren, aber die "Nur Text" Spalte mit der RTF Formatierung ist dann nicht leserlich sonder 1:1 exportiert.
Kennt jemand eine Trick wie ich beim exportieren das RTF lesbar bekomme?
Order kann ich in Access die Spalte in eine andere Spalte oder Tabelle konvertiert und lesbar abspeichern?
Besten Dank.
Rene
Please also mark the comments that contributed to the solution of the article
Content-ID: 329153
Url: https://administrator.de/forum/wie-kann-man-ein-access-rtf-format-im-nur-text-feld-in-excel-order-word-exportieren-329153.html
Printed on: January 23, 2025 at 20:01 o'clock
6 Comments
Latest comment
Hallo Rene,
Wenn ja dann erstellt folgender Code in der jeweiligen Tabelle eine weitere Spalte, konvertiert den RTF-Code in lesbaren Plaintext und fügt Ihn in die neue Spalte ein. Tabellenname, Spaltenname und "neuer" Spaltenname bitte in den Konstanten an deine Situation anpassen.
Grüße Uwe
In dieser Spalte wurden aber Texte im RTF Format gespeichert.
OK, d.h. gehe ich richtig in der Annahme das dort Codes wie z.B. folgende stehen? (Ich frage deshalb weil in Access Daten mit HTML-Tags manchmal auch als "RTF" durchgehen.){\rtf1
Guten Tag!
\line
{\i Dies} ist \b{\i ein
\i0 formatierter \b0Text}.
\par
\i0 Das \b0Ende.
}
Sub ConvertRichtextColumnToPlaintextColumn()
On Error Resume Next
'Variablen
Dim rec As Recordset, rtf as Object
' Konstanten
' Name der Tabelle
Const TABLENAME = "Testdaten"
' Name des Feldes in dem der Richtext-String steht
Const FIELDNAME = "Beschreibung"
' Name der neuen Spalte die erzeugt wird
Const FIELDNAME_NEW = "Beschreibung_Neu"
' --------
'RTF Control erzeugen
Set rtf = CreateObject("RICHTEXT.RichtextCtrl")
With CurrentDb
' neue Spalte der Tabelle hinzufügen
.Execute "ALTER TABLE " & TABLENAME & " ADD " & FIELDNAME_NEW & " MEMO"
'Recordset öffnen
Set rec = .OpenRecordset(TABLENAME)
rec.MoveFirst
' Jede Zeile durchlaufen und umgewandelten Richtext der neuen Spalte zuweisen
While Not rec.EOF
rtf.TextRTF = rec.Fields(FIELDNAME).Value
rec.Edit
rec.Fields(FIELDNAME_NEW).Value = Application.PlainText(rtf.Text)
rec.Update
rec.MoveNext
Wend
End With
Set rtf = Nothing
MsgBox "Verabeitung abgeschlossen", vbInformation
End Sub
ups
Quelle: https://www.experts-exchange.com/questions/28217794/Remove-RTF-codes-on- ...
Public Function ConvRTFtoText( _
ByVal strRTF As String, _
Optional booSingleRun As Boolean) _
As String
' Converts RTF formatted string to plain text using RTF ActiveX control.
' When finished, Rich Text object is removed if booSingleRun is True.
'
' 2001-05-27. Cactus Data ApS, CPH.
Static objRTF As Object
Static booErr As Boolean
Dim strText As String
On Error GoTo Err_ConvRTFtoText
If objRTF Is Nothing Then
Set objRTF = CreateObject("RICHTEXT.RichtextCtrl")
End If
With objRTF
.TextRTF = strRTF
strText = .Text
End With
If booSingleRun = True Then
Set objRTF = Nothing
End If
ConvRTFtoText = strText
Exit_ConvRTFtoText:
Exit Function
Err_ConvRTFtoText:
If booErr = False Then
MsgBox "Error " & Err.Number & ". " & Err.Description & "!", _
vbExclamation + vbOKOnly, _
"Rich Text converter"
' Only show error message once per session.
booErr = True
End If
Resume Exit_ConvRTFtoText
End Function
Quelle: https://www.experts-exchange.com/questions/28217794/Remove-RTF-codes-on- ...