2016-11-09 45 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),)] 

這一次應用正確的大小寫到整列,而不需要循環的。

+0

如果我有一些已經在列中正確的大小寫的值,它似乎不起作用。 – Jordan

+0

不工作是什麼意思?它給出了一個錯誤?它將它們更改爲全部小寫?不工作不是很具描述性。 @Jordan –

+0

它會拋出大約20000行而不是200,而隨機值會遍佈整個宏,這也會導致巨大的延遲。 – Jordan