Thema Datum  Von Nutzer Rating
Antwort
Rot Inhalt eines Textfeldes (inkl. Formatierung) in die Zwischenablage kopieren
17.05.2021 07:36:44 PeterAusGE
Solved
17.05.2021 08:46:02 Gast1675
NotSolved
17.05.2021 10:28:01 Gast96359
NotSolved
17.05.2021 10:38:08 Gast36265
NotSolved
17.05.2021 11:24:13 PeterAusGE
NotSolved
17.05.2021 11:33:31 Gast234
NotSolved
17.05.2021 12:31:41 PeterAusGE
NotSolved

Ansicht des Beitrags:
Von:
PeterAusGE
Datum:
17.05.2021 07:36:44
Views:
924
Rating: Antwort:
 Nein
Thema:
Inhalt eines Textfeldes (inkl. Formatierung) in die Zwischenablage kopieren

Hallo Experten,

 

ich hatte mal gelernt, dass man alles, was man manuell als User in Excel machen kann, auch per VBA-Makros programmieren kann (und darüber hinaus mit VBA natürlich noch viel mehr).

 

Nun stehe ich vor einem Problem, welches ich zwar manuell aber eben nicht per VBA-Code lösen kann. (Hinweis: ich benutze Excel 2019 unter Windows 10).

 

Ausgangspunkt:

Ich habe in einem Worksheet (Name: „eMail-Vorlage“) ein Textfeld über die Menüs Einfügen/Text/Textfeld (also als Shape und nicht als Userform!) abgelegt. Dieses Textfeld (zugewiesener Name: „eMailNachricht“) enthält formatierten Text (inkl. verschiedener Schriftarten und Schriftgrößen, mit und ohne Unterstreichung, kursiv und normal, unterschiedliche Farben).

 

Diesen formatierten Text dieses Textfeldes (also den Textfeld-Inhalt *ohne* Textfeld-Rahmen) möchte ich gerne per VBA-Code in die Zwischenablage kopieren (da ich dann anschließend diesen Text als Body einer Outlook-eMail verwenden möchte).

 

Manuell (ohne VBA) kann ich einfach das Textfeld anklicken, dann den gesamten Text mit [Strg]+[a] markieren und mit [Strg]+[c] den Text in die Zwischenablage bringen.

(Kontrollieren kann ich den korrekten Transfer, indem ich anschließend den Inhalt der Zwischenablage z. B. in Word mit [Strg]+[v] einfüge.)

 

Genau das gleiche möchte ich auch per VBA-Code machen. Leider habe ich hierzu noch keine Lösung gefunden. Scheinbar gibt es den entsprechenden „Copy-Befehl“ hierfür nicht. Habe schon das ganze Wochenende in den verschiedenen Foren nach einer Lösung gesucht aber leider nichts gefunden. Vielleicht habt ihr eine Idee?

 

Hinweis: Über den Umweg der Textablage in einer Excel-Zelle (hier „A1“) mit dem Code…

 

     Range("A1") = Worksheets("eMail-Vorlage").Shapes("eMailNachricht").TextFrame.Characters.Text

     Range("A1").Copy

 

…landet der Text zwar in der Zwischenablage, aber dadurch wird leider die Text-Formatierung nicht mit übernommen.

 

Anderseits wird mit dem Code…

 

     Worksheets("eMail-Vorlage").Shapes("eMailNachricht").Copy

 

… das gesamte Shape inkl. Formatierung in die Zwischenablage übernommen, aber leider auch mit dem Rahmen des Textfeldes, welchen ich nicht haben möchte.

 

Hat jemand eine Idee?

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Inhalt eines Textfeldes (inkl. Formatierung) in die Zwischenablage kopieren
17.05.2021 07:36:44 PeterAusGE
Solved
17.05.2021 08:46:02 Gast1675
NotSolved
17.05.2021 10:28:01 Gast96359
NotSolved
17.05.2021 10:38:08 Gast36265
NotSolved
17.05.2021 11:24:13 PeterAusGE
NotSolved
17.05.2021 11:33:31 Gast234
NotSolved
17.05.2021 12:31:41 PeterAusGE
NotSolved