標題:
[發問]
請教各位 如何split後將(文字)轉換為(數字)
[打印本頁]
作者:
cmo140497
時間:
2013-1-16 14:09
標題:
請教各位 如何split後將(文字)轉換為(數字)
Dear 各位大大及版主您好 :
小弟有一函數轉換問題,請問在split(string," ")(0)後,如何將實為"000"轉換為數字"0"或"001"轉換為數字"1"呢?感恩!
Sub 巨集2()
Dim MyTEXT As String, ar, j As Integer
MyTEXT = "AAA:000 001 002 003"
j = 1
If MyTEXT Like AAA & "*" Then
Cells(1, j).Value = Split(MyTEXT, ":")(0)
ar = Split(Split(MyTEXT, ":")(1), " ")
Cells(1, j + 1).Resize(, UBound(ar) + 1) = ar
'Result : Cells(1,1)=AAA , Cells(1,2)=000 , Cells(1,3)=001 , Cells(1,4)=002, Cells(1,5)=003
'如何將000 001 002 003 轉換為數字Cells(1,2)=0 , Cells(1,3)=1 , Cells(1,4)=2, Cells(1,5)=3
End If
End Sub
複製代碼
[attach]13965[/attach]
作者:
stillfish00
時間:
2013-1-16 14:19
回復
1#
cmo140497
CInt(expression) 函數可轉為整數資料 , expression 引數範圍須在 -32,768 至 32,767
作者:
cmo140497
時間:
2013-1-16 14:32
回復
2#
stillfish00
不好意思,請教要加在哪?會比較適當,一直出現alarm message:型態不符,謝謝您不吝指教,感恩!
作者:
stillfish00
時間:
2013-1-16 14:41
回復
3#
cmo140497
ar = Split(Split(MyTEXT, ":")(1), " ")
'插入底下迴圈
For i = LBound(ar) To UBound(ar)
ar(i) = CInt(ar(i))
Next
作者:
Hsieh
時間:
2013-1-16 14:42
本帖最後由 Hsieh 於 2013-1-16 17:38 編輯
回復
1#
cmo140497
對於陣列元素的資料修改必須一一修改
無法利用資料型態轉換函數一次性的轉換
ar = Split(Split(MyTEXT, ":")(1), " ")
For i = 0 To UBound(ar)
Cells(1, j + 1 + i) = CItn(ar(i))
Next
作者:
cmo140497
時間:
2013-1-16 14:47
回復
4#
stillfish00
實在感謝您的不吝指教,小弟把Cint直接冠在ar前,才會出錯,太感謝您了,感恩!
作者:
GBKEE
時間:
2013-1-17 16:14
回復
1#
cmo140497
Sub 巨集2()
Dim MyTEXT As String, ar, j As Integer
MyTEXT = "AAA:000 001 002 003"
j = 1
If MyTEXT Like AAA & "*" Then
Cells(1, j).Value = Split(MyTEXT, ":")(0)
ar = Split(Split(MyTEXT, ":")(1), " ")
With Cells(1, j + 1).Resize(, UBound(ar) + 1)
.Value = ar
.Value = .Value '範圍的值=範圍的值
End With
'Result : Cells(1,1)=AAA , Cells(1,2)=000 , Cells(1,3)=001 , Cells(1,4)=002, Cells(1,5)=003
'如何將000 001 002 003 轉換為數字Cells(1,2)=0 , Cells(1,3)=1 , Cells(1,4)=2, Cells(1,5)=3
End If
End Sub
複製代碼
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)