"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

how-to: rtf to txt in vba???

LTD 01.12.2009 - 19:49 3798 10
Posts

LTD

frecher fratz
Avatar
Registered: Feb 2001
Location: is where it is
Posts: 6334
Ich ärgere mich noch immer mit meinem RTF-Code herum und möchte nun versuchen den in der Tabelle gespeicherten RTF-Code direkt ins Memo-Feld zu übertragen. Hat jemand eine Ahnung, wie man sowas anstellen kann?

Thx 4 help

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
rtf sind afaik ja nur plaintext+escape sequences, wenn du also die escape-sequences rausfilterst hast du txt. Wie das in vba speziell geht weiss ich nicht. Vielleicht gibts auch schon fertige funktionen (würd mich nicht wundern -> copy & paste?)

LTD

frecher fratz
Avatar
Registered: Feb 2001
Location: is where it is
Posts: 6334
Copy und Paste wollte ich machen, aber bei über 1000 Datensätzen ist das dann doch etwas mühsam :).

Danke für die Info!

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
Ich meinte nicht Copy/Paste per Hand :p

DirtyHarry

aka robobimbo
Avatar
Registered: Apr 2001
Location: outer space
Posts: 464
Also in Access 2007 hab ich das jetzt getestet:

Ein Formular erstellt, ein Textfeld erstellt, das Textformat auf RTF gestellt, eine Schaltfläche hinzugeklatscht, und da steht folgender Code drin:

Code:
Private Sub Befehl6_Click()
    Dim text As String
    text = Me.Text4.Value
    MsgBox (text)
    
End Sub

Und die MsgBox gibt dann aus: "<div>Das ist ein <font size=4><strong>RTF </strong></font>Text</div>"

Und genauso kannst dann den Text in ein Memo reinklatschen

LTD

frecher fratz
Avatar
Registered: Feb 2001
Location: is where it is
Posts: 6334
Ganz richtig, ich muss es nur aus einem MS Rich Text Control 6.0 rauskopieren und dann in das TextFeld(RTF) einfügen ... da liegt der Hund begraben =). Mit diesem ActiveX-Element kann ich nämlich genau garnix machen... ich weiß nicht ob das an mir, oder dem Element liegt.

DirtyHarry

aka robobimbo
Avatar
Registered: Apr 2001
Location: outer space
Posts: 464
Normalerweise müsste Dir das Control auch Methoden bzw. Properties anbieten mit dem du an den Inhalt rankommst.

Alternativ gibt es auch ein nachgebautes Control zum runterladen: http://www.verylim.com/ActiveX/RichTx31/000.htm

Da ist auch eine hilfe datei dabei, vielleicht hilft Dir das weiter

LTD

frecher fratz
Avatar
Registered: Feb 2001
Location: is where it is
Posts: 6334
Danke seh ich mir gleich mal an. Das Problem vom derzeitigen RTF-Control ist, dass ich keinen Zugriff auf den Inhalt habe. Sprich, ich kann weder etwas selektieren, noch kopieren oder gar verändern...

A bien tot!

EDIT: x31/32 haben auch nix bewirkt. Ich kann nach wie vor nicht auf den Inhalt zugreifen. SetFocus ist das einzige Argument, dass direkt etwas am RTF-Feld bewirkt. Muss ich da irgendwas davor schreiben, oder freischalten?
Bearbeitet von LTD am 05.12.2009, 14:30

DirtyHarry

aka robobimbo
Avatar
Registered: Apr 2001
Location: outer space
Posts: 464

LTD

frecher fratz
Avatar
Registered: Feb 2001
Location: is where it is
Posts: 6334
So, das Problem ist wirklich, dass das RTF-Element als OLE-Container eingebettet ist und ich damit nicht viel mehr machen kann, als es mit .Value auslesen. Immerhin habe ich dann den unformatierten RichText, den müsste ich dann umwandeln... phu!

LTD

frecher fratz
Avatar
Registered: Feb 2001
Location: is where it is
Posts: 6334
YEAH! Mit "me!" statt "me." kann ich zugreifen ... meine Güte das hat gedauert!
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz