我的代碼 -我想在VB6
For i= 1 to 10
str & i = InputBox("Enter a number")
Next i
創建一個動態變量的問題是,它不會創建變量,並強調了「&」的標誌。請幫忙。 P.S.我不想使用數組。
編輯(從評論的一個更新的要求):
我不能使用數組,因爲它爲學校的項目,我不允許的,並且用戶可以根據輸入儘可能多的數字他想,所以......?
我的代碼 -我想在VB6
For i= 1 to 10
str & i = InputBox("Enter a number")
Next i
創建一個動態變量的問題是,它不會創建變量,並強調了「&」的標誌。請幫忙。 P.S.我不想使用數組。
編輯(從評論的一個更新的要求):
我不能使用數組,因爲它爲學校的項目,我不允許的,並且用戶可以根據輸入儘可能多的數字他想,所以......?
正如Marco所說,你不能有變量變量。
聽起來像是你需要的不是數組:
dim inputs(1 To 10) as Integer
For i= 1 to 10
inputs(i) = InputBox("Enter a number")
Next i
UPDATE:未知數量的輸入的接聽要求,並沒有數組:
你都不可能使用一個集合,因爲這會採取新輸入你需要:
'Create a collection and a temp variable
Dim strs As New Collection
Dim str As String
'Loop until the input is empty
Do
str = InputBox("Enter a number")
If str <> "" Then strs.Add (str)
Loop Until str = ""
'Then later you can do
Dim val As String
For Each val In strs
'Do something with val
Next
thnx!這個工程:D:D :) – user1025469
我想創建VB6動態變量
這就是你想要的,但它肯定不是你所需要的。如果沒有上限
Dim str(10) As String
Dim i As Integer
For i= 1 to UBound(str)
str(i) = InputBox("Enter a number")
Next i
,你可以使用一個集合:
你可以使用一個數組這一點。
Dim str As New Collection
Do
str.Add InputBox("Enter a number"), CStr(str.Count)
Loop Until str(str.Count) = ""
str.Remove str.Count
你說用戶可以輸入他們想要的數量。也許你不想要一個For
循環,而是一個Do
或While
循環,當用戶完成時(當他們將輸入框留空或鍵入「完成」或某物時)Exit
。
但是,你也許不需要一次存儲所有的數字。只需將該數字輸入到一個變量中,在循環體內進行所需的任何處理(例如將其添加到總數中),然後在循環的下一次迭代中重複使用相同的變量名稱。
如果你真的需要將它們一次全部存儲,是的,你需要一個數組(或者Dictionary或Collection對象,但仍然像數組)。
我認爲海報試圖做的事情被誤讀了。他們想要使用單個變量,但繼續使用其他用戶輸入來更新它。一個VB字符串可以很好地工作,並附加一個vbCrLf將分割字符串來分隔值easy。這與Tomalak的樣本非常相似。
Dim strUserInput As String
Do
strUserInput = InputBox("Enter a number")
Text1.Text = Text1.Text & vbCrLf & strUserInput 'I am displaying the user input but another string can be used here also
Loop While Len(strUserInput) > 0
所以我沒辦法做到這一點?我的意思是沒有數組 – user1025469
沒有。即使有辦法,你也不想採取這種做法。動態變量總是一種代碼味道。你想做什麼? – Tomalak
您可以使用集合,這與數組類似,但也許在您的學校項目中允許。 – GTG