vba如何将文本轉換成數字格式? 百度一下要将大寫數字轉小寫感覺是比較麻煩的,提供一種解決思路供參考比如C列所有單元格可能都含大寫數字,需要轉成阿拉伯數字,設計為雙循環 替換解決,代碼如下:,下面我們就來說一說關于vba如何将文本轉換成數字格式?我們一起去了解并探讨一下這個問題吧!
百度一下要将大寫數字轉小寫感覺是比較麻煩的,提供一種解決思路供參考。比如C列所有單元格可能都含大寫數字,需要轉成阿拉伯數字,設計為雙循環 替換解決,代碼如下:
arr = Array("一", "二", "三", "四", "五", "六", "七", "八", "九", "十") '建數組
For i = 1 To 111 'C列單元格循環
k = 1
For Each A In arr 'arr數組循環
If InStr(Cells(i, 3), A) > 0 Then
Cells(i, 3) = Replace(Cells(i, 3), A, k)
Exit For
Else
k = k 1
End If
Next
Next i
發現以上代碼針對每個單元格數組從一到十都要循環,感覺不爽。如果大寫數字在字符串中的位置是有規律的,如出現在字符串的最後,那麼可以建字典,數組就不需要每次都循環了。代碼如下:
Set Dia = CreateObject("scripting.dictionary") '建字典
arr = Array("一", "二", "三", "四", "五", "六", "七", "八", "九", "十") '建數組
k = 1
For Each A In arr
Dia(A) = k
k = k 1
Next
For i = 1 To 111
A = Right(Cells(i, 3), 1)
If Dia.Item(A) <> "" Then Cells(i, 3) = Replace(Cells(i, 3), A, Dia.Item(A))
Next
Dia.RemoveAll '清空字典
[我想靜靜][我想靜靜][我想靜靜]
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!