Przy każdej wartości tekstowej mogę indywidualnie formatować każdy znak, a następnie skopiować to formatowanie do innej komórki, wykonując iterację w kolekcji Range.Characters()
.Dlaczego komórki numeryczne nie mają właściwości .Characters()?
Jednak jeśli komórka jest liczbą (nawet jeśli liczbaFormat wyświetla ją jako ciąg, np. Daty), to nie ujawnia ona właściwości .Characters()
i rzeczywiście nie może być selektywnie sformatowana cyfra po cyfrze.
Dlaczego w programie Excel wyświetlane są ciągi znaków przy użyciu obiektów znaków, ale nie liczb, nawet jeśli numer jest wyświetlany jako ciąg?
Jeśli liczba jest sformatowana jako tekst (tj. * "Wyświetlany jako ciąg" *), możesz formatować poszczególne znaki/cyfry. Jeśli jest sformatowany jako liczba, to 10 to nie 10, to jest 0A. – Jeeped
@Jeeped Otrzymuję, że tekst może być sformatowany jako seria znaków. Co ja ** myślałem ** było przypadkiem, że obiekty Characters() zostały użyte jako warstwa prezentacji (szczególnie dla rzeczy takich jak DateValues wyświetlane jako zapisane daty). dla dowolnych wartości, ale najwyraźniej nie dla liczb. Próbuję tylko dowiedzieć się, co się właściwie ** dzieje. – Kaz
Prawda może cię przerazić. Możesz wziąć niebieską pigułkę i zobaczyć obiekt 'Range' z magicznymi właściwościami, albo możesz wziąć czerwoną pigułkę, faceoffoff z COM i" rzeczywistym "modelem obiektu Excel, i zobaczyć, jak głęboko zagłębia się królik. Podobała mi się niebieska pigułka. –