|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.02.2009, 20:06 | #1 |
Форумчанин
Регистрация: 02.02.2009
Сообщений: 842
|
Еще раз про адресацию
Что-то я до конца не въеду в адресацию ячеек. Проще говоря торможу...
Задача 1: Есть лист с кодовым именем "Участки" в котором горизонтально храниться информация, блоками по 6 колонок, начиная с 4 колонки ("D"). Необходимо удалить один из блоков, то есть удалить столбцы в которых находиться данный блок. Вот код: Код:
Код отлично работает если текущим является лист "Участки", при вызове макроса из любого другого листа, не работает.. :(( Почему? Можно ли это сделать по другому? Задача 2: Есть два листа с кодовыми именами "Участки" и "Шаблоны". Нужно из листа "Шаблоны" скопировать с форматированием одну ячейку в лист "Участки". Вот этот код почему-то не работает: Код:
Cells(6, 2) - координата нужной ячейки в шаблоне. Смещение_уч - смещение на начало блока данного участка, пример расчета есть выше. Что я опять сделал не так?
С уважением, Алексей.
|
25.02.2009, 01:49 | #2 | ||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
не надо использовать в коде методы .Activate и .Select Когда Вы наконец-то ко мне прислушаетесь, подобные проблемы с кодом исчезнут. Выделять ячейки требуется крайне редко, а в 95 процентах случаев выделение ячеек только мешает. Вместо этого: Код:
Код:
А если уж так сильно хочется повыделять ячейки, то предварительно активируйте соответствующий лист: Код:
Цитата:
В записи Range("Участки.шаблон"), скорее всего, есть ошибка. Зачем так всё усложнять? По-моему, вполне достаточно будет этого: Код:
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 25.02.2009 в 01:57. |
||
25.02.2009, 07:56 | #3 | ||
Форумчанин
Регистрация: 02.02.2009
Сообщений: 842
|
Цитата:
Цитата:
Подобный код работал как раз в случае ручной активации и того ужасного когда что был в начале.
С уважением, Алексей.
|
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Еще раз о EAccessViolation. | Andre1723 | Общие вопросы Delphi | 12 | 23.02.2009 01:39 |
Еще раз крестики - нолики. | Иваненко | Помощь студентам | 2 | 17.12.2007 20:09 |