如何使用命令 "range" 指定多个单元格进行计算

How to use the command "range" in order to specify multiple cells for calculations

目的是计算平均值并将其写入单元格。其代码如下:

Sub Schaltfläche2_Klicken()     Dim wb As Workbook, wq As Object
Dim ws As Worksheet, datdatum

 Set wb = Workbooks.Add
 Set ws = wb.Worksheets("Tabelle1")

 ws.Range("D84").Formula = "=Average(D19,D29,D35,D46)
 ws.Range("E84").Formula = "=Average(E19,E29,E35,E46)
 ws.Range("F84").Formula = "=Average(F19,F29,F35,F46)

简写为:

ws.Range("D84:P84").Formula = "=Average(D19,D29,D35,D46)

这适用于指定范围。

不需要循环。 VBA 将自行进行更改:

s.Range("D84:P84").Formula = "=Average(D19,D29,D35,D46)"

Excel 将更改列引用,就好像它被拖过一样。

但是如果你真的想循环那么你需要从字符串中的引号中删除 vba 并与 &

连接
 For i = 4 To 16
     ws.Cells(84, i).Formula = "=Average(" & ws.Cells(19,i).Address & "," & _
          ws.Cells(29,i).Address & "," &ws.Cells(35,i).Address & "," & _
          ws.Cells(46,i).Address)"
 Next i