Доброе время суток !
Помогите пожалуйста разобраться :
в VBA создаётся кнопка меню : (пример во вложении)
Dim pop As Office.CommandBarPopup
Dim btn As Office.CommandBarButton
Set pop = Application.CommandBars.Item("Worksheet Menu
bar").Controls.Add(msoControlPopup)
With pop
.Caption = "SAMPLE"
.Tag = "sample"
.BeginGroup = True
End With
Set btn = pop.Controls.Add(msoControlButton)
With btn
.Caption = "Function sample"
.Tag = "sample"
.OnAction = "sample"
' .OnAction = "sample(1)"
End With
если .OnAction = "sample" - то всё ОК
проблема в том, что если задавать
.OnAction = "sample(1)", т.е. передавать параметр
(на деле необходимо создать двенадцать кнопок (на каждый месяц) и в функцию
передавать номер месяца)
то функция
sample(1)
- выполняется два раза
- в ней не отрабатывает очистка листа :
Workbooks("sample.xls").Worksheets("Лист1").Cells.Clear
- В строке
WS.Cells(i, j) = CDbl(rec(f.Name))
начинает ругаться на : CDbl()
Заранее спасибо за ответ . . .
Ответить
|