Цикл по столбцам, а затем делать UCase - PullRequest
0 голосов
/ 14 июня 2019

У меня есть код, который перебирает столбцы, чтобы найти конкретное окончание в столбце (_END).Если он обнаружит это, он будет циклически проходить по строкам в этом столбце, изменяя форматирование даты.Это работает как задумано, и у меня нет проблем с этим.Тем не менее, мне нужно UCase строки также.Прямо сейчас, это вывело бы дату как "01-янв-2016".Однако мне нужно, чтобы это было «01-ЯНВ-2016».У меня есть код ниже, который доставляет мне неприятности.

    lngColHeaders = Cells(5, Columns.Count).End(xlToLeft).Column
For X = 1 To lngColHeaders
If (Right(Cells(5, X), 4)) = "_END" Then
    LastRowDates = Cells(Rows.Count, X).End(xlUp).Row
    For ZZ = 6 To LastRowDates Step 1
        Cells(ZZ, X).NumberFormat = "dd-MMM-YYYY"
        UCase (Cells(ZZ, X))
    Next ZZ
End If
Next X

Как я уже сказал, кажется, что они правильно форматируют, но UCase (Cells(ZZ,X)), похоже, ничего не делает.Любая помощь очень ценится.

1 Ответ

1 голос
/ 14 июня 2019

Я думаю, вам нужно отформатировать ячейку как текст, а затем выполнить UCase вместе с Format.

Cells(ZZ, X).NumberFormat = "@"
Cells(ZZ, X).Value = UCase(Format(Cells(ZZ, X).Value, "dd-MMM-YYYY"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...