2015-10-25 26 views
2

請參閱先前的問題,現在已轉向某種更先進的方法(Insert an advanced formula into a cell);需要將多個值從VBA放到使用循環的單元中/ for

我創建使用Me.TerminalID1(到14)的.List來填充我的用戶窗體,其中達到drowndown通過14

命名cboTerminalID1 14名下拉列表我要使用循環功能來添加列表從cboTerminalID1到14的內容填充Excel中的單元格,C4到C17。

我試過這段代碼;但顯然不行;

For TIDtoCell = 4 To 17 Step 1 
    Sheets("Rapport SNN").[C & TIDtoCell & ].FormulaLocal = "=cboTerminalID" & TIDtoCell & "" 
    Next TIDtoCell 

這個想法是,它應該是;

表( 「融洽SNN」)。〔C4〕.FormulaLocal = cboTerminalID4

任何想法?所以無望是一個新手...

回答

1

假設組合框包含您想寫信給工作表公式:

For TIDtoCell = 4 To 17 
    Sheets("Rapport SNN").Cells(TIDtoCell, 3).FormulaLocal = "=" & Me.Controls("cboTerminalID" & TIDtoCell - 3) 
Next 

注:這也假定公式,作爲存儲在組合框,不包括最初的等號。

注意:這裏假定這些代碼將被放置到用戶窗體代碼模塊中。

如果這些假設都不正確,我很樂意改變答案。請讓我知道。

UPDATE

基於新的信息,在組合框的值不是公式,這是解決方案:

For TIDtoCell = 4 To 17 
    Sheets("Rapport SNN").Cells(TIDtoCell, 3) = Me.Controls("cboTerminalID" & TIDtoCell - 3).Value 
Next 
+0

我可能didnt解釋不夠好。這是我想要放入單元格的cboTerminalID的值。 我已經重寫了代碼位,並獲得到它把相同的值在每一個細胞C4-C17點: '設置RapportSheet =工作表(「融洽SNN」) 昏暗TIDtoCell作爲整數 對於TIDtoCell = 4到17步驟1 RapportSheet.Range(「C」&TIDtoCell&「」).Value = cboTerminalID1.Value' 我試着設置'= cboTerminalID(TIDtoCell).Value和= cboTerminalID&TIDtoCell&。價值「,但我總是得到錯誤。 –

+0

因此,組合框中的值不是公式? –

+0

正確,我誤解了我需要加入的術語(自從過去的星期四起,我與VBA合作過,所以請原諒我的錯誤)。這是我需要通過的下拉列表中選擇的值。如果我只做一個單元格,我通過RapportSheet.Range(「C4」)得到它的值。Value = cboTerminalID1.Value' –

0
For TIDtoCell = 4 To 17 Step 1 
    Sheets("Rapport SNN").["C" & TIDtoCell].FormulaLocal = "=cboTerminalID" & TIDtoCell & "" 
Next TIDtoCell 
相關問題