[英]Referencing a Numerical Value From a Cell in Excel VBA Code
對於下面的代碼,我希望“x”的值根據 Excel 中單元格的值而變化,例如 2000 年和 1995 年。鑒於這兩年,我希望“x”的值為 5(2000 - 1995 年)。 我嘗試了一些不同的東西,但無法讓它工作。
Dim i As Integer
For i = 1 To 5
rng.Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "=R[-1]C/R122C"
Next i
對於您想要循環的范圍,可能性的數量是無窮無盡的。 您可以創建變量並執行函數來查找您想要查找的任何數字。 您可以計數、求和等。請注意變量有限制(整數與長整數)。 在下面的示例中,假設范圍包含年份,我創建了MinYear
和MaxYear
。 如果是日期,則必須找到提取年份的公式。 您可以使用結果來定義循環或按照建議進行數學運算以找出差異。
Sub LoopOnCellValues()
Dim i As Integer
Dim MinYear As Integer
Dim MaxYear As Integer
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Sheet1")
MinYear = WorksheetFunction.Min(ws.Range(ws.Cells(2, 2), ws.Cells(2, 100)))
MaxYear = WorksheetFunction.Max(ws.Range(ws.Cells(2, 2), ws.Cells(2, 100)))
For i = MinYear To MaxYear
'do something
Next i
'or
For i = 1 To (MaxYear - MinYear)
'do something
Next i
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.