Подсказки при создании шаблона Excel

Ирина

Модератор
ЧИСЛОВОЕ ПОЛЕ В ШАБЛОНЕ EXCEL ОТОБРАЖАЕТСЯ НЕКОРРЕКТНО
При заполнении шаблона с числовым полем не во всех шрифтах число корректно отображается, а чаще всего это поле пустое (значение поля видно только в панели функций). Иногда шрифт, из-за обязательных требований государственных органов, изменять нельзя.
В таком случае используется апостроф, т.е. числовое поле записывается так '[Число]


РАЗБИВКА ТЕКСТА (ЧИСЛА) НА СИМВОЛЫ, СКРЫТИЕ ОПРЕДЕЛЕННЫХ СИМВОЛОВ В ШАБЛОНЕ EXCEL
Разбивка текста (числа) на символы

Нужно заполнить документ определенной формы, в котором для каждой буквы или числа, отдельная ячейка.
В данном случае используется функция выделения символа из строки [1(Поле)] [2(Поле)] [3(Поле)] ...

Например, в документ внести фамилию Иванов. В проекте это поле [Фамилия]. В самом проекте дополнительные поля для этого поля не создаются, функцию выделения символа из строки прописываем только в шаблоне.
В фамилии Иванов 6 букв, каждая ячейка в шаблоне заполняется так:
[1(Фамилия)] [2(Фамилия)] [3(Фамилия)] [4(Фамилия)] [5(Фамилия)] [6(Фамилия)]
Разбивка ФИО на символы.png
Но фамилия может содержать разное количество символов, поэтому по всей строке заполняется каждая ячейка. Если в строке 40 ячеек, шаблон будет выглядеть так:
[1(Фамилия)] [2(Фамилия)] … [40(Фамилия)]

Числовые поля разбиваются на символы аналогично текстовым, но с использованием апострофа:
'[1(Сумма)] '[2(Сумма)] '[3(Сумма)] …


Скрытие определенных символов

В документе нужно скрыть число 0 в определенных ячейках.
В проекте 2 поля – сумма налога к доплате и сумма налога к уменьшению. В зависимости от начислений, значение полей меняются и одно из полей всегда равно 0. Однако в документе, поле с числом 0, должно быть пустым.
Разбивка на символы.png
В шаблоне выделяем нужные ячейки (как правило, это первая ячейка в строке). Для выделения одновременно всех ячеек, устанавливаем курсор на первую ячейку, нажимаем клавишу Ctrl и не отпуская ее, мышкой выделяем все другие нужные ячейки.
Открываем на главной вкладке в Excel функцию Условное форматирование – Правила выделения ячеек – Текст содержит…, вписывает туда 0, выбираем пользовательский формат и на вкладках "Шрифт" и "Заливка", выбираем белый цвет. Сохраняем правило.
В документе, ячейка с числом 0, визуально остается всегда пустой.


В ШАБЛОНЕ EXCEL НЕ СРАБАТЫВАЕТ МАКРОС RUNA НА 2-М И ДРУГИХ ЛИСТАХ
Все макросы в проекте создаются строго с именем "runa", а не "Runa".
Если их несколько, то имена должны быть: runa, runa1, runa2 и т.д. Имя и число записываются без пробела.

Часто используют макрос только с нужным кодом, например, удаление определенных строк по условию (актуально при больших объемах таблиц). Такой макрос выполняется только на активном листе. Если в документе несколько рабочих листов, то для работы макроса в автоматическом режиме (при открытии документа), нужно использовать еще и макрос с кодом активации всех листов. Это может быть как отдельный макрос, так и объединенный макрос (активация листов с одновременным выполнением других команд).

Макрос активации рабочих листов (отдельный макрос), выполняющий другой макрос:
Код:
Sub runa()
    Application.ScreenUpdating = False ' отключаем обновление экрана
    Dim ws As Worksheet    'декларирование переменой
    For Each ws In Worksheets
        ws.Activate    ' активируем лист
        runa1    ' выполняем макрос
    Next
End Sub
 
Последнее редактирование:
Сверху Снизу