Excel中的VBA函数公式如何使用变量

Subtest()DimxAsIntegerForx=0To31'Sheets("总表").Cells(6+x,6).Value=Application.Sum(Rang... Sub test()
Dim x As Integer
For x = 0 To 31
'Sheets("总表").Cells(6 + x, 6).Value = Application.Sum(Range("j6:v6")) ‘这个是把j6:v6的和填到第6列,但没有随着行数变化而变化,起不到相对引用的效果
Sheets("总表").Cells(6 + x, 6).Value = Evaluate("=sum(cells(6+x,10):cells(6+x,10+理科数))")
Next
end Sub

我是想要=sum(j6:v6)这个公式的求和范围能随着行数x变化而变化 请问要如何写,我下面的写法得不出结果。其中“理科数”是一个已赋值的公共变量。请教这样的情况要怎么写?谢谢!
Sheets("总表").Cells(6 + x, 6).Value = Evaluate("=sum(cells(6+x,10):cells(6+x,10+理科数))")
Sheets("总表").Cells(6 + x, 6).Value = Evaluate("=sum(Range("cells(6+x,10):cells(6+x,10+理科数)"))")
展开
 我来答
通信小可爱
2015-08-27 · TA获得超过1.1万个赞
知道大有可为答主
回答量:2625
采纳率:71%
帮助的人:1295万
展开全部
Sheets("总表").Cells(6 + x, 6).Value = Application.Sum(Range("j" & x & ":v" x))

具体可以根据你需要的修改

追问
你好,我的J和V列不是固定的,不一定就是J到V列,有时可能是J到W列,这个根据已赋值的公共变量:“理科数”来确定,所以 这样写得不到我要的结果啊(Range("j" & x & ":v" x)),不过还是感谢你的回答!
追答

哦明白了是要改下面的公式吧

Sub test()
Dim x As Integer
Dim y As Integer
dim k '和的暂存
n = 理科数
For x = 0 To 31
    k = 0
    For y = 10 To 10 + n
    k = k + ActiveSheet.Cells(6 + x, y)
    Next y
    ActiveSheet.Cells(6 + x, 6) = k
Next x
End Sub

试试看

不好意思刚才打错字了

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式