Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1308to1312
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
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

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

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

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

343 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige