|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.03.2009, 13:41 | #1 |
Пользователь
Регистрация: 24.02.2009
Сообщений: 29
|
задать диапазон используя значение переменной
Добрый день, уважаемые знатоки.
Подскажите, пожалуйста, как: 1. присвоить переменной значение из ячейки, допустим, A1 2. задать вот такой диапазон: Код:
|
02.03.2009, 14:03 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Selection.AutoFill Destination:=Range(range("A12"), range("G12").offset x)
или Selection.AutoFill Destination:=Range(cells(12,1), cells(12+x,7))
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
02.03.2009, 14:11 | #3 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Можно и покороче:
[A12:G12].AutoFill [A12:G12].Resize([a1] + 1) |
02.03.2009, 16:35 | #4 |
Пользователь
Регистрация: 24.02.2009
Сообщений: 29
|
спасибо большое за ответы, почти получилось )
а как задать переменную не напрямую n=a1 тоже формулой типа n=[А; 1+y]? и возможно ли это в варианте "покороче"? |
02.03.2009, 16:40 | #5 | |
Пользователь
Регистрация: 24.02.2009
Сообщений: 29
|
Цитата:
меня сейчас скорее интересует, как именно задать переменную n=[А; 1+y], чтобы брать данные из разных ячеек |
|
02.03.2009, 16:47 | #6 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Как-то так: (помимо этого, есть ещё много способов обратиться к ячейке)
Код:
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 02.03.2009 в 16:52. |
02.03.2009, 18:31 | #7 |
Пользователь
Регистрация: 24.02.2009
Сообщений: 29
|
макрос делает кучу всего, у меня с описанием глобального запроса, как Вы могли убедиться, сегодня беда
но спасибо за развернутый ответ, он мне помог даже несколько задач решить надеюсь, сможете помочь еще с такой задачей - в ячейку нужно вставить формулу, но в ней тоже присутствует переменная.. или может быть можно иначе? ActiveCell.FormulaR1C1 = "=SUM(R[2]C[-4]:R[2+m]C[-4])" собственно, в предыдущем куске кода копируются данные из одной строки на несколько вниз, а в эту ячеку должна встать сумма значений в столбце G по новоиспеченным строкам |
02.03.2009, 18:37 | #8 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Попробуйте так:
Код:
|
03.03.2009, 16:18 | #9 |
Пользователь
Регистрация: 24.02.2009
Сообщений: 29
|
спасибо, получилось.
моё чувство прекрасного очень страдает от того, что не владею инструментом в полной мере, чтобы отказаться от использования обращения ActiveCell, но есть над чем работать а вот еще вопрос, с которым никак не могу справиться сама: Код:
=C12/$G$10*F12*$D$10 и в других соответственно формула правильно прописывалась. не пойму, почему вставляется 22 и 40, хотя в данном случае д.б.,соответственно, 10 и 19.. |
03.03.2009, 16:28 | #10 | ||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
Больше всего впечатляют строки типа Цитата:
Подробно объясните, что должен делать макрос. И результат не заставит себя долго ждать |
||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Функция не меняет значение переменной.... | DoHJICyaH | Общие вопросы C/C++ | 1 | 02.11.2008 20:10 |
задать значение переменной в только что макросом открытой книге | tolikman | Microsoft Office Excel | 2 | 17.10.2008 16:35 |
как получить значение переменной | smoke888 | PHP | 3 | 20.06.2008 02:11 |
Как написать в коде чтобы диапазон А копировался как значение в диапазон В. | Dorvir | Microsoft Office Excel | 12 | 23.05.2008 22:11 |
Как получить значение системной переменной в С++ | PersonaGrata | Общие вопросы C/C++ | 2 | 29.02.2008 22:14 |