2012-05-13 40 views
1

刪除空格我從細胞移動文本一些代碼,細胞在VBA Excel中

Dim startIndex As Integer 
Dim toIndex As Integer 
Dim f As String 
Dim g As String 

For startIndex = 50 To 60 Step 2 
toIndex = Str(startIndex + 1) 
f = "F" & Str(toIndex) 
g = "G" & Str(startIndex) 
Range(f).Value = Range(g).Value 
Range(g).Value = "" 
Next startIndex 

但變量f有「F 51」值,而不是「F51」。

如何解決這個問題? p.s.這是我在vba上的第一個代碼。

回答

13

您應該使用
CStr

Str

則需要爲Str

移除unncessary空間

f = "F" & CStr(toIndex) 
g = "G" & CStr(startIndex) 

從Excel幫助沒有解決方法當數轉換爲字符串,一領先的空間總是保留給號碼的符號。

+2

+1爲了解決核心問題。也可以通過使用'f =「F」&CStr(startIndex + 1)來改變'toIndex = startIndex + 1'或者去掉'toIndex'' –