|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
需要实现从一个不确定位置的列中求和
假设sheet1有12个月的数据,sheet2中通过match找到对应的月,并对对应月下面的数据进行求和
整体代码如下
最后一句sumif的时候发生报错1004,请大神指教
Private Sub CommandButton3_Click()
Dim a, b, c, d, e, f, g, N1, N2, N3, k1
Dim i, j
For i = 7 To Sheet12.Range("a5000").End(xlUp).Row
a = Sheet8.Cells(4, 5) '第一个非固定的位置的编号
b = Sheet8.Cells(4, 6) '第一个非固定的位置对应的月
N1 = Excel.Application.WorksheetFunction.Match(a, Sheet10.Range("c1:bc1"), 0) + 2 '数值目标列第一个位置对应的列
N2 = Excel.Application.WorksheetFunction.Match(b, Sheet12.Range("u2:af2"), 0) + 20 '数值原数据第一个位置对应的列
'k1 = Application.WorksheetFunction.Find("$", Cells(1, N2).Address, 2) - 2 '获取对应的地址
'N3 = VBA.Mid(Cells(1, N2).Address, 2, k1) '获取对应的列名字
Sheet10.Cells(i, N1) = Application.WorksheetFunction.SumIf(Sheet12.Range("B5:B100"), Sheet10.Cells(i, 2), Sheet12.Range(Cells(N2, 5), Cells(N2, 100)))
Next
End Sub
其中这部分,还想测试通过N3得出的列,直接使用Range来实现,也没有成功
Sheet12.Range(Cells(N2, 5), Cells(N2, 100)))
Sheet12.Range(N3&5:N3&100)
|
|