Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Shape Text hinzufügen (Makro)

Shape Text hinzufügen (Makro)
10.03.2009 16:41:24
Florian
Hallo zusammen,
ich habe leichte Probleme mit Shapes. Wie kann ich einer Autoform einen Text hinzufügen (Makro)?
Meine Code jetzt lautet:
FormSheet.Shapes(FormSheet.Shapes.Count).Characters.Text = "Hallo"
Was ist da falsch?
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Shape Text hinzufügen (Makro)
10.03.2009 16:53:52
Tino
Hallo,
z. Bsp. so

Sub test()
Dim objText As OLEObject
For Each objText In formsheet.OLEObjects
If TypeName(objText.Object) = "TextBox" Then
objText.Object.Value = "Hallo"
End If
Next objText
End Sub


Gruß Tino

AW: Shape Text hinzufügen (Makro)
10.03.2009 17:02:50
Lesen
Wie kann ich einer Autoform einen Text hinzufügen (Makro)?
Anzeige
AW: Shape Text hinzufügen (Makro)
10.03.2009 17:08:35
Tino
Hallo,
hast Du keinen Namen, damit ich Dich ansprechen kann?
Dim ObjS As Shape
Set ObjS = formsheet.Shapes("Abgerundetes Rechteck 1")
ObjS.DrawingObject.Text = "Hallo"
Gruß Tino
Danke funktioniert oT;)
10.03.2009 18:20:10
Florian
--
;
Anzeige
Anzeige

Infobox / Tutorial

Autoform Text in Excel mit VBA hinzufügen


Schritt-für-Schritt-Anleitung

Um einer Autoform in Excel mit VBA Text hinzuzufügen, kannst du die folgenden Schritte befolgen:

  1. Öffne den Visual Basic for Applications (VBA) Editor: Drücke ALT + F11 in Excel.
  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineArbeitsmappe)", wähle "Einfügen" und dann "Modul".
  3. Füge den folgenden Code ein:
Sub TextZuShapeHinzufuegen()
    Dim ObjS As Shape
    Set ObjS = ActiveSheet.Shapes("Abgerundetes Rechteck 1") ' Ändere den Namen entsprechend
    ObjS.TextFrame.Characters.Text = "Hallo"
End Sub
  1. Ändere den Namen der Form: Stelle sicher, dass der Name der Autoform ("Abgerundetes Rechteck 1") mit dem Namen in deinem Arbeitsblatt übereinstimmt.
  2. Führe das Makro aus: Gehe zurück zu Excel, drücke ALT + F8, wähle das Makro "TextZuShapeHinzufuegen" und klicke auf "Ausführen".

Häufige Fehler und Lösungen

  • Fehler: "Objekt nicht gefunden"
    Lösung: Überprüfe, ob der Name der Autoform korrekt ist. Du kannst den Namen sehen, wenn du die Form in Excel auswählst.

  • Fehler: "Typenkonflikt"
    Lösung: Stelle sicher, dass du die richtige Shape-Objektart verwendest. Der Code oben funktioniert nur für Shapes, die Text unterstützen.


Alternative Methoden

Eine weitere Methode, um Text zu einer Autoform hinzuzufügen, ist die Verwendung von OLEObjects:

Sub TextZuOLEObjectHinzufuegen()
    Dim objText As OLEObject
    For Each objText In ActiveSheet.OLEObjects
        If TypeName(objText.Object) = "TextBox" Then
            objText.Object.Value = "Hallo"
        End If
    Next objText
End Sub

Dieser Ansatz ist nützlich, wenn du mit Textfeldern in Excel arbeitest.


Praktische Beispiele

  1. Text in ein abgerundetes Rechteck einfügen:

    Sub TextInRechteck()
       Dim ObjS As Shape
       Set ObjS = ActiveSheet.Shapes("Abgerundetes Rechteck 1")
       ObjS.TextFrame.Characters.Text = "Willkommen!"
    End Sub
  2. Alle Textfelder in einem Blatt aktualisieren:

    Sub AlleTextfelderAktualisieren()
       Dim objText As OLEObject
       For Each objText In ActiveSheet.OLEObjects
           If TypeName(objText.Object) = "TextBox" Then
               objText.Object.Value = "Neuer Inhalt"
           End If
       Next objText
    End Sub

Tipps für Profis

  • Verwende Variablen: Definiere Variablen für deine Shapes, um den Code lesbarer zu machen.
  • Fehlerbehandlung: Implementiere On Error Resume Next, um mögliche Laufzeitfehler zu vermeiden.
  • Dokumentation: Kommentiere deinen Code, um die Nachvollziehbarkeit zu verbessern, besonders wenn du oft mit excel vba shape text arbeitest.

FAQ: Häufige Fragen

1. Wie füge ich Text in ein Shape ein, das keinen Textrahmen hat?
Du kannst den Text direkt mit ObjS.DrawingObject.Text hinzufügen, wenn es sich um ein Shape handelt, das diese Eigenschaft unterstützt.

2. Was mache ich, wenn mein Makro nicht funktioniert?
Überprüfe die Sicherheitseinstellungen in Excel, um sicherzustellen, dass Makros aktiviert sind. Gehe zu "Datei" > "Optionen" > "Trust Center" > "Einstellungen für das Trust Center" > "Makroeinstellungen".

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige