Выравнивание текста Excel с помощью пользовательского форматирования

Выравнивание текста Excel с помощью пользовательского форматирования

Есть ли в формуле пользовательского форматирования что-либо, определяющее выравнивание текста?

Я знаю, что разные части формулы — это числа, отрицательные числа и так далее, но мне нужно настроить выравнивание.

Пример:

_*# ##0_;_*(# ##0)_;_*"-"??_;_@_

решение1

Хотя невозможно явно задать выравнивание ячеек с помощью пользовательского формата, вы можете добиться того же эффекта, используя синтаксис Повторить символы в пользовательском формате. Этот синтаксис представляет собой просто символ *, за которым следует символ, который вы хотите повторить, в данном случае, предположительно, символ пробела.

Например, простой формат чисел, разделенных запятыми, «#,##0» можно выровнять по левому краю, изменив строку формата на «#,##0*».

Развивая пример дальше, можно выровнять числовые записи по левому краю, а текстовые записи по правому краю, используя строку пользовательского формата "#,##0* ;;;* @".

решение2

Чтобы прямо ответить на вопрос относительнотекствыравнивание по пользовательской строке форматирования невозможно. Однако можно эмулировать 2 из 6 вариантов выравнивания (левый| центр |верно| вверху | посередине | внизу) с помощью пользовательских настроек форматирования для вставки невидимых символов.

Чтобы выровнять текст по правому краю, как упоминалось в другом ответе здесь, просто оставьте первые три поля пустыми и используйте синтаксис «Повторить символы», *за которым следует пробел, а затем @место, куда вы хотите вставить текст.

;;;* @

Это приведет к принудительному выравниванию текста по правому краю, даже если к ячейке применен тип выравнивания «По центру».

В некоторых ситуациях вам необходимо принудительно выровнять текст по левому краю. Например, сводная таблица, отображаемая в табличной форме или форме структуры, может автоматически объединять и центрировать ячейки с метками. Что делать, если вы хотите просто объединить, но хотите, чтобы текст был выровнен по левому краю? Пользовательские правила форматирования можно использовать для постобработки форматирования, примененного сводной таблицей.

Чтобы выровнять текст по левому краю, нужно проявить немного креативности. В ситуации со сводной таблицей Excel (раздражающе) обрезает конечные пробелы в пользовательском правиле перед применением формата, поэтому простое использование ;;;@*[space]не сработает. Однако вместо этого вы можете использовать один из невидимых символов Unicode, и Excel не потревожит ваш пользовательский формат.

Невидимые символы Unicode — это U0160и U255. Подойдет любой из них. В Windows нажмите и удерживайте Altи введите цифры, например Alt+ 2+ 5+ 5. Невидимый символ будет вставлен после отпускания Alt.

Что касается параметров вертикального выравнивания, то нам придется либо запустить скрипт VBA, либо использовать кнопки выравнивания на ленте. Пользовательские форматы нельзя использовать, например, для выравнивания по верхнему краю.


Пример: принудительное выравнивание по левому/правому краю, даже если выравнивание ячеек = центр

Переопределение выравнивания по центру в ячейках таблицы Excel


Пример: принудительное выравнивание по левому краю в объединенном и центрированном столбце меток сводной таблицы

Переопределение выравнивания по центру в сводной таблице

решение3

Ссылаться наhttps://www.auditexcel.co.za/blog/excel-refuses-to-align-a-number-left-or-centre/ У меня это сработало. «Как показано ниже, выделите ячейки, в которых числа Excel не будут выровнены по левому краю или по центру, и:

перейдите в «Формат ячеек», нажмите «Пользовательский». Вы увидите код, который сообщает Excel о необходимости использовать формат учета. Удалите * в формате и нажмите «ОК».

решение4

Не совсем так. Я соглашусь с @teylyn, но вы можете сделать что-то, что вы сможете адаптировать.

введите описание изображения здесь

Связанный контент