Макрос на кнопке по .OnAction - VBA

Узнай цену своей работы

Формулировка задачи:

Всем доброго времени суток! Есть макрос:
Листинг программы
  1. Sub macro1(ByVal a%)
  2. MsgBox "a = " & a
  3. End Sub
Генерирую кнопку на листе, хочу присвоить кнопке
Листинг программы
  1. .OnAction = "macro1"
и при этом еще как то умудриться присвоить входную переменную

a

Ругается, не понимаю, как это можно воплотить в жизнь!
Листинг программы
  1. Sub strt()
  2. For i = 5 To 10
  3. For j = 5 To 10
  4. With ActiveSheet.Buttons.Add(i * 22.5, j * 22.5, 22.5, 22.5)
  5. .Characters.Text = ""
  6. .OnAction = "macro1(1)"
  7. End With
  8. Next j
  9. Next i
  10. End Sub
При этом даже если sub превращаю в function, все равно не работает. что делаю не так ?

Решение задачи: «Макрос на кнопке по .OnAction»

textual
Листинг программы
  1. .OnAction = "'macro1 1'"

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.286 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы