Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bei Bedingung Textfeld einfügen

Bei Bedingung Textfeld einfügen
18.11.2005 13:12:27
maennle
Hallo zusammen,
gibt es die Möglichkeit via Vba, bei einer Bedingung(z.B. bestimmter Inhalt einer Zelle) ein vorgeschriebenes Textfeld ans Ende oder eine bestimmte Position zu kopieren?
danke schonmal
maennle
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bei Bedingung Textfeld einfügen
18.11.2005 13:21:44
u_
Hallo,
klar geht das. Mal als Ansatz:

Sub test()
Dim tbx As Object
Set tbx = ActiveSheet.Shapes("TextBox1").Duplicate
With tbx
.Left = Range("C3").Left
.Top = Range("c3").Top
End With
End Sub

Gruß
Geist ist geil!
AW: Bei Bedingung Textfeld einfügen
18.11.2005 13:36:18
maennle
Hammerhart.....
Wird das Textfeld neu generiert, oder wo steht das rum?
Gruß
AW: Bei Bedingung Textfeld einfügen
ransi
hallo m
wenn du mich meinst:
Nein.
Das ist ein textfeld das standardmäßig visible=false ist.
nur wenn a1=1 ist kommt visible=true mit den passenden top + left angaben.
wie gesagt:
Als ansatz
ransi
Anzeige
AW: Bei Bedingung Textfeld einfügen
18.11.2005 14:05:09
maennle
ja ich meinte Deinen Ansatz....
Habs mittlerweile schon gemerkt, klappt wunderbar
Grüße
maennle
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Textfeld in Excel einfügen bei bestimmten Bedingungen


Schritt-für-Schritt-Anleitung

Um ein Textfeld in Excel einzufügen, wenn eine bestimmte Bedingung erfüllt ist, kannst du VBA verwenden. Hier ist eine einfache Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Erstelle ein neues Modul, indem du im Menü auf Einfügen > Modul klickst.

  3. Füge den folgenden VBA-Code in das Modul ein:

    Sub TextfeldEinfügen()
       Dim tbx As Object
       Set tbx = ActiveSheet.Shapes("TextBox1").Duplicate
       With tbx
           .Left = Range("C3").Left
           .Top = Range("C3").Top
           .Visible = Range("A1").Value = 1 ' Textfeld nur anzeigen, wenn A1 = 1
       End With
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, indem du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.

Mit dieser Methode kannst du dynamisch ein Textfeld in Excel einfügen, wenn eine bestimmte Bedingung erfüllt ist.


Häufige Fehler und Lösungen

  • Textfeld einfügen nicht möglich: Stelle sicher, dass du das Textfeld korrekt benannt hast (z.B. "TextBox1"). Du kannst den Namen im Eigenschaftenfenster ändern.

  • Das Textfeld bleibt unsichtbar: Überprüfe, ob die Bedingung in der Zeile .Visible = Range("A1").Value = 1 korrekt ist. Vielleicht musst du den Zellbezug und den Vergleichswert anpassen.


Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du auch bedingte Formatierungen nutzen, um den Text in eine Zelle einzufügen, anstatt ein Textfeld zu verwenden. Hier ist eine einfache Anleitung:

  1. Wähle die Zelle aus, in der der Text erscheinen soll.
  2. Gehe zu Start > Bedingte Formatierung > Neue Regel.
  3. Wähle Formel zur Ermittlung der zu formatierenden Zellen verwenden.
  4. Gib eine Formel ein, z.B. =A1=1.
  5. Klicke auf Formatieren und wähle die gewünschte Schriftfarbe oder -art.

Auf diese Weise kannst du den Text nur unter bestimmten Bedingungen anzeigen.


Praktische Beispiele

Hier sind einige praktische Beispiele für die Verwendung von VBA, um ein Textfeld zu erstellen:

  1. Textfeld anzeigen, wenn eine Zahl größer als 10 ist:

    If Range("B1").Value > 10 Then
       tbx.Visible = True
    End If
  2. Textfeld mit benutzerdefiniertem Text füllen:

    tbx.TextFrame.Characters.Text = "Bedingung erfüllt!"

Diese Beispiele zeigen, wie du das Textfeld anpassen kannst, je nach deinen Anforderungen.


Tipps für Profis

  • Verwende die With-Anweisung, um den Code übersichtlicher zu gestalten.
  • Experimentiere mit verschiedenen Bedingungen in deinem Code, um die Funktionalität zu erweitern.
  • Nutze MsgBox, um Feedback zu erhalten, wenn eine Bedingung nicht erfüllt ist.

FAQ: Häufige Fragen

1. Wie kann ich ein Textfeld einfügen, wenn eine andere Zelle einen bestimmten Text enthält?
Du kannst die Bedingung in deinem VBA-Code anpassen, z.B. If Range("B1").Value = "Text" Then.

2. Was kann ich tun, wenn das Textfeld nicht angezeigt wird?
Überprüfe die Sichtbarkeitseinstellungen in deinem Code und stelle sicher, dass die Bedingung erfüllt ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige