-1
整體的目標是在逗號之間返回字符,並在另一段代碼中使用它們中的每一個。如果有人知道更好的做法,請告訴我。VBA:爲什麼我的FOR循環沒有返回任何東西?
問題:
我試圖找到字符串中的逗號的位置。
字符串:
Dim st As String
st = "1642377,001642381,010301642379"
我嘗試:
For pos = 1 To Len(st)
If Mid(st, pos, 1) = "," Then
MsgBox ("Position of comma:" & pos)
End If
Next
目前返回:
代碼不返回任何東西。 If
條件未返回true。
預期結果:
甲MsgBox
應彈出兩次,顯示逗號的每個時間的位置。
有人給你一個更好的方式做到這一點,但我猜你的循環沒有運行......你的代碼顯示'對於pos = 1到len(st)',但什麼是'st'?你不會顯示它是如何聲明的或者它是多久的......如果你逐步瞭解代碼,你應該能夠看到發生了什麼。 – OpiesDad
@OpiesDad woops,對不起。 'st'就是字符串。 – DarthVoid
如果您想了解您的循環無法正常工作的原因,請發佈聲明和分配的完整子文件。見[mcve]。如果你還沒有使用['Option Explicit'](https://msdn.microsoft.com/en-us/library/bw9t3484%28v=vs.84%29.aspx),請使用[Option Explicit']。 - 很可能,你會在這個過程中自己發現問題。 – Andre