Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.06.2017, 16:46   #21
Oleg_123
Пользователь
 
Регистрация: 04.06.2017
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
Не углубляясь в детали рефакторинга макроса
Я "игрался" блоками With для разных строк. У меня получался подобный результат на каком-то промежуточном этапе.
Но вот, что что точно у меня не получилось, так это:
1) в шапке выровнять еще и по правому краю и убрать прорисовку границ шапки (та, что курсивом)
2) выровнять еще и по низу строчку "Голова..." (предпоследнюю в табличке района)
Как правильно задавать разное форматирование для разных ячеек табличек?
Oleg_123 вне форума Ответить с цитированием
Старый 07.07.2017, 14:42   #22
Oleg_123
Пользователь
 
Регистрация: 04.06.2017
Сообщений: 25
По умолчанию

Спасибо большое! У меня все получилось:
Цитата:
в шапке выровнять еще и по правому краю и убрать прорисовку границ шапки (та, что курсивом), выровнять еще и по низу строчку "Голова..." (предпоследнюю в табличке района).
Однако, действие макроса
с кнопки
С КНОПКИ.JPG

и со списка макросов отличается
(Форматирование шапки и концовки разное; я добиваюсь именно этого,что внизу)
Со списка макросов.JPG

Чем это обусловлено? Что не так в кнопке? (это мой последний вопрос в этой теме)

Книга3.rar

Последний раз редактировалось Oleg_123; 07.07.2017 в 19:58.
Oleg_123 вне форума Ответить с цитированием
Старый 07.07.2017, 15:40   #23
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Oleg_123 Посмотреть сообщение
Чем это обусловлено? Что не так в кнопке? (это мой последний вопрос в этой теме)
в кнопке всё так.

не всё так в макросе БОЛЬНИЧКА03

предполагаю, что проблема в том, что с кнопки Вы вызываете макрос при активном листе "Справочник", а из списка макросов - откуда угодно. И это влияет на логику работы макроса.

попробуйте в начало макроса добавить активацию первого листа:
Код:
Sub БОЛЬНИЧКА03()
    Dim a(), b()
    Dim i&, rw&, head_rw&
    Dim sd_dist As Object, sd_date As Object
    Dim f_date As Date, l_date As Date
    Dim key_distr, key_date
    Dim j As Byte, jj As Byte, gr As Byte
'--------------------------------------------
    t = Timer 'удалить строку
    
    Application.ScreenUpdating = False 'отключаем прорисовку экрана
    
    'Workbooks("Книга3").Activate
    ActiveWorkbook.Sheets("Справочник").Activate
проверьте, верно ли моё предположение.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 07.07.2017, 16:12   #24
Oleg_123
Пользователь
 
Регистрация: 04.06.2017
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
в кнопке всё так.

не всё так в макросе БОЛЬНИЧКА03

предполагаю, что проблема в том, что с кнопки Вы вызываете макрос при активном листе "Справочник", а из списка макросов - откуда угодно. И это влияет на логику работы макроса.

попробуйте в начало макроса добавить активацию первого листа:
Код:
ActiveWorkbook.Sheets("Справочник").Activate
проверьте, верно ли моё предположение.
Активация листа "Справочник" ничего не меняет в макросе.
Вернее, недоформатирование (как и запуск с кнопки) появляется и со списка макросов, непостоянно, как-то через раз

Последний раз редактировалось Oleg_123; 07.07.2017 в 16:21.
Oleg_123 вне форума Ответить с цитированием
Старый 07.07.2017, 16:19   #25
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Oleg_123 Посмотреть сообщение
Активация листа "Справочник" ничего не меняет в макросе
у меня результат работы макроса БОЛЬНИЧКА03 из списка и этого же макроса по кнопке становится одинаковый.
У Вас нет?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 07.07.2017, 18:27   #26
Oleg_123
Пользователь
 
Регистрация: 04.06.2017
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
у меня результат работы макроса БОЛЬНИЧКА03 из списка и этого же макроса по кнопке становится одинаковый.
У Вас нет?
Ну правильно, одинаковый с выравниванием посередине всей таблички.
А я же добиваюсь разного выравнивания для разных фрагментов табличек:
(см скан в моем вопросе)
1) шапка - выравнивание вправо, без границ, курсив;
2) основная таличка - выравнивание посередине, с границами, обычный шрифт;
3) две последние строчки -
левая половина - выравнивание влево,
предпоследняя строчка "Голова..." - еще и книзу; правая половина (ФИО)- вправо.
ПОЧЕМУ С КНОПКИ МАКРОС ВЫПОЛНЯЕТСЯ НЕ ПОЛНОСТЬЮ?
А СО СПИСКА МАКРОСОВ - ПОЛНОСТЬЮ ВЫПОЛНЯЕТСЯ НЕ ВСЕГДА?

Последний раз редактировалось Oleg_123; 07.07.2017 в 21:27.
Oleg_123 вне форума Ответить с цитированием
Старый 07.07.2017, 21:32   #27
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Заменить в модуле2 Activesheet на Sheets("Списки по р-нам"). В чем трудности-то?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 08.07.2017, 14:10   #28
Oleg_123
Пользователь
 
Регистрация: 04.06.2017
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
Заменить в модуле2 Activesheet на Sheets("Списки по р-нам"). В чем трудности-то?
Спасибо большое! Все заменил. Макрос работает. Трудностей нет. По работе макроса вопросов нет.
А те подмакросы обязательно должны быть в модуле2 (или в каком еще, но другом)?
Или возможно их размещение в одном модуле с макросом БОЛЬНИЧКА?
Что лучше?

Последний раз редактировалось Oleg_123; 08.07.2017 в 14:15.
Oleg_123 вне форума Ответить с цитированием
Старый 08.07.2017, 19:07   #29
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Работает? Не трожьте. �� а серйозно, то неважно в каком модуля книги они. Можно,даже, в персональную книгу или надстройку вынести, главное понимать что где и как использовать.
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отменить действие макроса в функции If ольгаг Microsoft Office Excel 2 11.12.2015 23:10
Транспонирование множества данных из разных книгах или из разных листов на 1 лист посредством макроса Тантана Microsoft Office Excel 6 18.12.2014 13:04
Как на дле разных категориях выводить разное количество похожих новостей у новости? pq777pq PHP 1 02.07.2011 00:49
PageControl. На каждой фкладке одинаковый врейм но действие на всех разное. Человек_Борща Общие вопросы Delphi 4 06.05.2011 18:03
Вывод разных стилей под разное разрешение. Как правильно оформить? Steh PHP 1 20.07.2010 12:01