2012-01-03 175 views

回答

5

你可以試試這個:

arrStr = Split(str, " ") 
strCnt = UBound(arrStr) + 1 
msgBox strCnt 

當然,如果你有Option Explicit集(你應該..)則宣佈上述第一變量..

1

您的請求沒有任何意義。一個字符串是一個文本序列。文本序列中包含空格分隔的數字這一事實是無關緊要的。您的字符串看起來像這樣:

30 40 50 60 

有不爲4獨立的值,只存在一個值,上述的一個字符串示出。

您也可以將該字符串視爲包含11個單獨的字符,因此可以認爲該字符串的「計數」爲11,但這不會讓您對目標有任何進一步的瞭解。

爲了得到您期望的結果,您需要將字符串拆分爲每個空格處的多個字符串,從而生成4個單獨的字符串,每個字符串都包含一個2位數字值。

當然,真正的問題是爲什麼你要將這個值存儲在字符串中的第一位。如果它們是數值,則應將它們存儲在一個數組中(例如,一組Integer s)。然後,您可以使用LBound()UBound()函數輕鬆獲取陣列中的元素數量。

1

我同意科迪所說的一切。

如果你真的想要你可以逐個字符地循環字符串並計算你找到你的分隔符的次數。在你的例子中,它是空格分隔的,所以你只需要計算空格的數量並加1,但是正如Cody所說的那樣,這些不是單獨的數值。

你想解析文本嗎?無論如何,我認爲你真正需要做的是將你的數據存儲到一個數組中。讓你的生活更輕鬆,而不是更難。

相關問題