2016-11-09 3 views
0

Так что я знаю, что могу использовать следующий код, чтобы изменить значение одной ячейки в правильном случае в столбце B.Преобразовать весь столбец Для ProperCase

Dim Property As String 

Property = ActiveSheet.range("B6").Value 
Property = StrConv(Property, vbProperCase) 

ActiveSheet.range("B6") = Property 

Что мне нужно сделать сейчас, это выяснить, как применить надлежащее case для всей колонки B.

Я предполагаю, что это может быть выполнено с помощью цикла, но я не уверен в правильном синтаксисе для такого цикла.

ответ

0

Одна линия:

[B:B] = [INDEX(PROPER(B:B),)] 

Это будет применять Proper случай на весь столбец сразу без необходимости зацикливания.

+0

Кажется, что это не работает, если у меня есть некоторые значения, которые уже являются правильными в столбце. – Jordan

+0

Что вы имеете в виду, если не работаете? Это дает ошибку? Он меняет их на все строчные буквы? Не работает не очень описательно. @Jordan –

+0

Он выдает около 20000 строк вместо 200 со случайными значениями, разнесенными по всему, это также вызывает огромную задержку в макросе. – Jordan