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

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/how-to_rtf_to_txt_in_vba_212309/page_1 - zur Vollversion wechseln!


LTD schrieb am 01.12.2009 um 19:49

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 schrieb am 02.12.2009 um 12:52

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 schrieb am 02.12.2009 um 13:36

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 schrieb am 02.12.2009 um 15:01

Ich meinte nicht Copy/Paste per Hand :p


DirtyHarry schrieb am 05.12.2009 um 09:23

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 schrieb am 05.12.2009 um 10:41

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 schrieb am 05.12.2009 um 14:01

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 schrieb am 05.12.2009 um 14:13

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?


DirtyHarry schrieb am 05.12.2009 um 18:26

hab da noch was gefunden: http://www.eggheadcafe.com/software...fbox-und-t.aspx


LTD schrieb am 07.12.2009 um 20:40

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 schrieb am 07.12.2009 um 21:00

YEAH! Mit "me!" statt "me." kann ich zugreifen ... meine Güte das hat gedauert!




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026