OnAction Parameter mitgeben
Reinhard
zur Laufzeit wird in einjem Blatt ein Button erstellt.
Dieser Button soll dann ein Makro aufrufen und diesem einen Parameter übergeben.
Bei einem Test mit "Klappt" funktioniert es, klicke ich aber auf den Button so wird warum auch immer 1977 angezeigt als StrBlatt.
Was muß ich da ändern sodaß der Button funktioniert?
Wie kann ich einer Prozedur wie "PivotAktualisieren" je nach Sachlage den Namen eines Worksheets übergeben oder aber auch das Worksheet direkt als Objekt?
Und zwar zur laufzeit über OnAction.
Danke für das Interesse
Gruß
Reinhard
Sub test()
Call ButtonErstellen(worksheets("2011-03-31"))
End Sub
Sub ButtonErstellen(wks As Worksheet)
Dim T As Integer, L As Integer, W As Integer, H As Integer, btn As Button
With wks
L = .Range("C1").Left
T = .Range("C1").Top
W = 100
H = 20
Set btn = wks.Buttons.Add(L, T, W, H)
btn.Caption = "Pivot aktualisieren"
MsgBox wks.Name 'Anzeige: 2011-03-31
btn.OnAction = "'PivotAktualisieren " & wks.Name & "'"
MsgBox btn.OnAction 'Anzeige: Mappenname!'PivotAktualisieren 2011-03-31'
End With
End Sub
Sub PivotAktualisieren(ByVal strBlatt As String)
Dim PT As PivotTable
MsgBox strBlatt 'Anzeige: 1977
For Each PT In worksheets(strBlatt).PivotTables
PT.PivotTableWizard SourceType:=xlDatabase, SourceData:="PivotQuelle"
PT.RefreshTable
Next PT
End Sub
Sub Klappt()
Call PivotAktualisieren("2011-03-31")
End Sub