WinFuture-Forum.de: Text In Textbox Per Vba Formatieren Nicht Möglich - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Office 2007
Seite 1 von 1

Text In Textbox Per Vba Formatieren Nicht Möglich


#1 Mitglied ist offline   Stecky2000 

  • Gruppe: Mitglieder
  • Beiträge: 2
  • Beigetreten: 13. Juli 09
  • Reputation: 0

geschrieben 13. Juli 2009 - 10:40

Hallo, bin neu hier...

Ich arbeite schon seit jahren mit Office 2000 und entsprechend mit Excel 2000.

Nun ist unsere Firma dabei, auf Office 2007 umzusteigen und meine ersten Tests in Excel 2007 bringen mich jetzt schon zur Verzweiflung.

Wenn ich in Excel 2000 eine Textbox anlege und rein schreibe "das ist ein Test in rot und fett",
danach auf Makro aufzeichnen gehe
dann in der Textbox das Wort "rot" markiere und rot färbe, dann das Wort "fett" markiere und fett mache,
dann aus der textbox raus klicke und die Makroaufzeichnung beende,

dann kann ich mit Makro bearbeiten den entsprechen Quelltext sehen.

Wenn ich das ganze in Excel 2007 mache, dann finde ich im Quelltext nur eine Zeile, nämlich die für das rausklicken, sprich das Markieren eine beliebigen Zelle ausserhalb der Textbox.

Wie kann das sein?
Kann man in Excel 2007 die Dinge die man in der Textbox macht nicht mehr aufzeichnen?
Hat Microsoft den Funktionsumfang an der Stelle gegenüber Excel 2000 reduziert?

Wie kann ich in VBA die Inhalte der Textbox ansprechen und formatieren?

Ich hoffe, es weis jemand Rat.
0

Anzeige



#2 Mitglied ist offline   DPXone 

  • Gruppe: Mitglieder
  • Beiträge: 19
  • Beigetreten: 06. Juli 08
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 13. Juli 2009 - 16:51

Leider gibt es noch viel zu viele Dinge, die nicht aufgezeichnet werden.

Hier mal 2 Makros, wie du ein Textfeld erstellst und ansprichst.
Musste auch eben ein bisschen rumtüffteln, weil ich auch nur Excel07 hier hab.

Option Explicit

Sub Textfeld_erstellen()
	 ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 10, 10, 200, 20).Name = "Test_Textbox"
End Sub

Sub Textfeld_formatieren()
	 With ActiveSheet.Shapes("Test_Textbox")
		  .TextFrame2.TextRange = "Das ist ein Test in rot und fett"
		  .TextFrame2.TextRange.Find("fett").Font.Bold = msoTrue
		  .TextFrame2.TextRange.Find("rot").Font.Fill.ForeColor.RGB = RGB(255, 0, 0)
	 End With
End Sub


RGB-Farbcodes findest du z. B. hier:
http://www.uni-magde...r/rgb.txt.shtml
0

#3 Mitglied ist offline   Stecky2000 

  • Gruppe: Mitglieder
  • Beiträge: 2
  • Beigetreten: 13. Juli 09
  • Reputation: 0

geschrieben 14. Juli 2009 - 08:00

Danke für die Hilfe.

Es ist schön zu wissen, dass man doch per VBA den Inhalt der Textbox formatieren kann.

Dennoch frage ich mich, warum sich das nicht aufzeichnen lässt, da es sich unter Excel2000 sehr wohl aufzeichnen lässt.
Is it a bug or a feature?

Dennoch vielen Dank, mal sehen ob ich es verwenden kann.

Ich habe nämlich eine Anwendung in Delphi programmiert die auf Excel, deren Zellen und auf die Textbox zugreift. Unter Excel2000 funktioniert alles einwandfrei, doch unter Excel2007 habe ich eben diese Problem mit der Textbox. Gewöhnlich zeiche ich einfach ein Makro auf um fest zu stellen, wie ich bestimmte Dinge anspreche und programmiere das in Delphi, nur hier gibts ja keine Aufzeichnung.

Deshalb nochmal Danke, mal sehen ob mir dein Code von Delphi aus was nützt.

Dieser Beitrag wurde von Stecky2000 bearbeitet: 14. Juli 2009 - 09:05

0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0