我正在嘗試撰寫一個程式,它將洗掉 MsgBox 中單詞的每個第一個字母。這是我的代碼:
Sub Test
dim k as String
dim f as String
dim bd as String
k = inputbox("input text")
f = "inputed text:" & chr(9) & k & chr(13)
bd = bd Split(mid(k,1,1))
for i = 2 to len(k)
if mid(k,i-1,1) = "" then bd = bd Ucase(mid(k,i,1)) else bd = bd mid(k,i,1)
next i
f = f & "result of work:" & chr(9) & bd
MsgBox f
End Sub
我在這里收到錯誤: bd = bd Split(mid(k,1,1))
uj5u.com熱心網友回復:
如果要洗掉字串中任何病房的第一個字母,請測驗下一個代碼:
Sub deleteFirstWdLett()
Dim x As String, i As Long, arr
x = "My dog has three houses" 'consider it the InputBox string
arr = Split(x)
For i = 0 To UBound(arr)
arr(i) = Mid(arr(i), 2)
Next
Debug.Print Join(arr, " ")
End Sub
如果這個詞只包含一個字母,會發生什么?是否應該將其洗掉,從而產生額外的空白空間(如上所示)?代碼應該跳過這種情況嗎?我無法理解這樣做的原因,所以從這個角度來看,我無法想象你真正需要什么......
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/384772.html
下一篇:在Excel中將數字轉換為非數字
