AW: Combobox formatieren
Heiko
Hallo Geri,
versuche es mal so,
Private Sub Comboboxen_richten()
Dim objO As OLEObject
Dim hilf As Integer
' Alle OLEObjecte im aktiven Arbeitsblatt durchlaufen.
For Each objO In ActiveSheet.OLEObjects
' Wenn dabei eine Combobox gefunden wird dann darauf die Aktion ausführen.
If TypeName(objO.Object) = "ComboBox" Then
With objO
' Höhe und Breite festlegen.
.Height = 10
.Width = 100
' Nun die Nummer der Combobox rausfinden, funktioniert nur für 2stellige Zahlen.
hilf = Right(CStr(.Name), 1)
If IsNumeric(Right(CStr(.Name), 2)) = True Then
hilf = CInt(Right(CStr(.Name), 2))
Else
hilf = CInt(Right(CStr(.Name), 1))
End If
' Und dann anhand der Nummer die left Position festlegen
Select Case hilf
Case 2, 9, 11, 12, 13, 16
.Left = 79.5
Case 8, 10, 14, 15, 17
.Left = 326.25
End Select
End With
End If
Next objO
End Sub
Das Makro dann z.B. per Button, oder noch besser per Hotkey, starten.
Private Sub CommandButton1_Click()
Comboboxen_richten
End Sub
Wenn es wirklich 1000sende von Tabellen sind, solltest du dich mit den VBA Vorschlägen hier beschäftigen.
Mache dir eine extra Tabelle in der du dieses Makro kopierst mit einem Hotkey belegst und dann der Hotkey in den einzelnen Blättern der Tabelle startest.
Du mußt den Code bestimmt hier und da noch anpassen, aber wenn du genau beschreibst was noch gehen soll, läßt sich da auch bestimmt was tun.
Gruß Heiko
PS: Das Forum lebt auch von den Rückmeldungen der Frager!