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

Forumthread: per VBA alle Textboxen in Arbeitsmappe suchen

per VBA alle Textboxen in Arbeitsmappe suchen
19.04.2013 07:38:02
Peter
Hallo,
ich möchte per VBA in allen Blättern der gesamten Arbeitsmappe die Textboxen suchen
und wenn ein bestimmter Teil des Namens der gesuchten Textbox gleich ist
soll dort ein Inhalt eingefügt werden.
Mein Versuch ist mit meinen VBA Kenntnissen leider gescheitert.
Public Sub test()
Dim oleObj
For Each oleObj In ActiveSheet.OLEObjects
Select Case TypeName(oleObj.Object)
Case "TextBox"
MsgBox oleObj.Name
'        oleObj.Text = "A" 
z.B. Textbox1 und Textbox2 gleicher Namensteil: „Textbox“ den Inhalt „A“ einfügen
z.B- txtTest1 und txtTest2 gleicher Namensteil: „txtTest“ den Inhalt „B“ einfügen
einen Inhalt einfügen. lokale Namen per VBA definieren.
Wer kann helfen
Meine Vostellung:
Danke im voraus
Peter

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: per VBA alle Textboxen in Arbeitsmappe suchen
19.04.2013 08:46:05
EtoPHG
Hallo Peter,
Was du mit "lokale Namen per VBA definieren." meinst oder willst, kann ich nicht nachvollziehen.
Probiers mit diesem Code:
Sub test()
Dim oleObj
For Each oleObj In ActiveSheet.OLEObjects
If TypeName(oleObj.Object) = "TextBox" Then
If oleObj.Name Like "TextBox*" Then oleObj.Object.Text = "A"
If oleObj.Name Like "txtTest*" Then oleObj.Object.Text = "B"
End If
Next oleObj
End Sub
Gruess Hansueli

Anzeige
Vielen Dank- aber ich hab noch eine Frage
19.04.2013 10:29:54
Peter
Hallo Hansueli,
erstmal vielen Dank. Was du nicht definieren konntest
war Unachtsamkeit beim kopieren
Hab aber noch eine Frage:
Ist es möglich, dass dieses Makro bei allen Tabelleblättern
deren Registerfarbe gelb(6) ist, funktioniert?
Peter

Anzeige
AW: Vielen Dank- aber ich hab noch eine Frage
19.04.2013 10:45:09
Rudi
Hallo,
sicher geht das.
Sub test()
Dim oleObj, wks As Worksheet
For Each wks In Worksheets
If wks.Tab.ColorIndex = 6 Then
For Each oleObj In wks.OLEObjects
With oleObj
If TypeName(.Object) = "TextBox" Then
If .Name Like "TextBox*" Then .Object.Text = "A"
If .Name Like "txtTest*" Then .Object.Text = "B"
End If
End With
Next oleObj
End If
Next wks
End Sub

Gruß
Rudi

Anzeige
Danke und Entschuldigung
20.04.2013 07:58:36
Peter
Vielen Dank für Eure schnelle Hilfe.
Gleichfalls möchte ich mich dafür entschuldigen,
dass ich mich nicht gleich für Eure Antwort
"benannten Zellen" gleich bedankt habe.
Peter
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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