С любым текстовым значением я могу индивидуально форматировать каждый символ, а затем копировать это форматирование в другую ячейку, итерации по коллекции Range.Characters()
.Почему числовые ячейки не имеют свойства .Characters()?
Однако, если ячейка является номером (даже если номерFormatting отображает ее как строку, например, даты), то она не предоставляет свойство .Characters()
и, действительно, не может быть выборочно отформатирована по цифрам.
Почему Excel отображает строки, используя объекты символов, но не числа, даже если номер отображается в виде строки?
Если число отформатировано как текст (то есть * 'отображается как строка' *), вы можете отформатировать отдельные символы/цифры. Если он отформатирован как число, то 10 не 10, это 0A. – Jeeped
@Jeeped Я получаю, что текст может быть отформатирован как серия символов. То, что я ** считал **, было тем, что объекты Characters() использовались в качестве уровня представления (особенно для таких вещей, как dateValues, отображаемых в виде письменных дат). для любых значений, но, видимо, не для чисел. Я просто пытаюсь выяснить, что на самом деле происходит **. – Kaz
Истина может вас напугать. Вы можете взять голубую таблетку и увидеть объект «Range» с магическими свойствами, или вы можете взять красную таблетку, faceoff с COM и «реальную» объектную модель Excel, и посмотреть, как глубоко проходит кроличья дыра. Мне понравилась голубая таблетка. –