Страницы: 1
RSS
Передача переменных в вызываемый макрос
 
Друзья, помогите неопытному)
Для примера разбираюсь, не могу понять
Макрос в листе
Код
Public x As String
Public y As String
Sub www()
    x = "A1"
    y = "K5"
   Call qqq
End Sub
Макрос вызываемый в модуле:
Код
Sub qqq()
Cells.Range(x, y).Value = 1
End Sub
Eror 1004!
 
Ну или так
Код
Sub www()
    x = "A1"
    y = "K5"
   Call qqq(x, y)
End Sub

Sub qqq(x, y)
Cells.Range(x, y).Value = 1
End Sub
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Код
Public x As String
Public y As String
В модуль перед  макросом

Код
Sub qqq()
Cells.Range(x, y).Value = 1
End Sub
вставьте.
Изменено: Nordheim - 01.12.2017 14:14:56
"Все гениальное просто, а все простое гениально!!!"
 
Если в одном все листе, то конечно работает!
Но я хочу создать шаблон определенного макроса с переменными, а на листах вызывать его. На разных листах разные значения переменных будут
К примеру:
на 1 листе    x = "A1"    y = "K5"
на втором     x = "T11"    y = "Y100"
 
Цитата
slesarok написал:
разные значения переменных будут
в таком случае воспользуйтесь примером из сообщения №2
"Все гениальное просто, а все простое гениально!!!"
 
Alemox - помогло, в первый раз код неправильно разглядел)))
Спасибо!!!
Страницы: 1
Наверх