English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

例如將記事本裡的一行字如:
333_22____5555___11__________99999
底線代表空格
匯到另一個記事本,每組數字之間固定有一個空格,如
333 22 5555 11 99999
檔案匯入匯出我知道,只是不知道字串裡空格數目不固定要用什麼函數將每組數字取出來?

2006-06-12 17:51:15 · 1 個解答 · 發問者 undo 2 in 電腦與網際網路 軟體

給W.J.S
我的333_22____5555___11_________99999是舉例啦
數字有可能會變
空格數也不一定是兩格啊
有沒有類似execel匯入檔案可以將多個空格視為一個空格的函數?

2006-06-16 19:57:09 · update #1

1 個解答

Private Sub Command1_Click()        Dim S As String                S = "333 22     5555   11         99999"                '利用InStr檢查字串中是否有兩個空格        '有的話利用Replace將兩個空格改成1個空格        '直到字串中沒有兩個空格才離開D0~Loop        Do While InStr(S, "  ")           S = Replace(S, "  ", " ")        Loop        Print SEnd Sub

2006-06-17 00:46:37 補充:
嗯,對ㄚ!S字串也是隨時可以改的ㄚ,至於空格數也不一定是兩格:譬如說是5格來講(S=1-----2):第1次Do~Loop變成3格(S=1---2),第2次Do~Loop變成2格(S=1--2),第3次Do~Loop就變成1格了(S=1-2)你可以在S = Replace(S, " ", " ")下面加一行Print S就可知其變化.

2006-06-17 00:53:08 補充:
'若要製成函數:Function 縮格(ByVal S As String) As String    Do While InStr(S, " ")      S = Replace(S, " ", " ")    Loop    縮格 = SEnd Function'使用方法:Private Sub Command1_Click()   Print 縮格("111 222 3 4 5 666")End Sub

2006-06-17 00:58:16 補充:
'上一個補充有誤,空格以*代替好了,都被知識+吃掉了XDFunction 縮格(ByVal S As String) As String    Do While InStr(S, "**")      S = Replace(S, "**", "*")    Loop    縮格 = SEnd Function'使用方法:Private Sub Command1_Click()    Print 縮格("111*****222***3*****4**5***666")End Sub

2006-06-16 15:21:16 · answer #1 · answered by W.J.S. 7 · 0 0

fedest.com, questions and answers