AW: Commandbutton dynamisch erstellen
07.08.2007 11:15:00
Renee
Hi Leo,
Versuch es mal mit diesem Ersatz.
Die Identifikation erfolgt allerding über die Caption, statt über die Zellposition!
Public Sub prcCreateButton()
Dim objOLEObject As OLEObject
Dim lngRow As Long, lngCounter As Long
Const cFixName = "CommandButton_"
With Tabelle2
'delete old buttons
For Each objOLEObject In .OLEObjects
If TypeOf objOLEObject.Object Is MSForms.CommandButton _
And Left(objOLEObject.Object.Caption, Len(cFixName)) = cFixName Then _
objOLEObject.Delete
Next
'insert new buttons
For lngRow = 41 To .Cells(.Rows.Count, 1).End(xlUp).Row
lngCounter = lngCounter + 1
Set objOLEObject = .OLEObjects.Add(ClassType:= _
"Forms.CommandButton.1", Left:=.Columns(2).Left, Top:=.Cells(lngRow, 2).Top, _
Width:=.Cells(lngRow, 2).Width, Height:=.Cells(lngRow, 2).Height)
With objOLEObject
.Name = cFixName & CStr(lngCounter)
With .Object
.Caption = "CommandButton_" & CStr(lngCounter)
.TakeFocusOnClick = False
End With
End With
Next
End With
Application.OnTime Now() + TimeSerial(0, 0, 1), "prcAssign"
End Sub
Greetz Renee