永发信息网

VBA 使用.FormulaR1C1 写入公式,公式中需引用不同工作表的区域应该怎么写??

答案:1  悬赏:60  手机版
解决时间 2021-03-19 21:46
VBA 使用.FormulaR1C1 写入公式,公式中需引用不同工作表的区域应该怎么写??
最佳答案
这个和你在工作表中的公式基本一样,工作表中怎么写,VBA中就这么写啊,你只需要将工作表的公式样式设为R1C1,然后将工作表的公式复制进去就可以了。
Sheets(1).Range("B1:B10").FormulaR1C1 = "=VLOOKUP(RC[-1],表2!R1C1:R10C2,2,FALSE)" 亲,R1C1的引用样式相对于A1的样式好处在于具有相同的公式单元格内公式的字符都是一模一样的,这对于VBA来写公式时是非常方便的的。举个例子,你在B1中输入=A1,拉到B10时,从B2到B10就是=A2, =A3 , … , =A10. 如果用VBA来写的公式而又用A1样式的话,岂不是要对每个单元格不同处理,会很麻烦,换做R1C1样式的话,B1:B10中的公式都是=RC[-1], 一次就可以处理了:
Sheets(1).Range("B1:B10").FormulaR1C1 = "=RC[-1]"

[-1]代表相对与公式所在位置向左偏移1列,而公式的位置即为Sheets(1).Range("B1:B10"),你写公式的时候就指明了,所以无需”在代码中使用.FoumulaR1C1语句前,一定要选中某一个单元格“。

请仔细理解R1C1样式!
追问原来是这样!我一直都选中单元格再偏移…… 原来是相对被写入公式的单元格~!还可以对区域写入工时0.0 长见识了!

对于跨表的方式我还是不太理解……如果是相对被写入公式的单元格,那么我写入“表2”的单元格时也要相对“表1”中被写入的单元格而偏移吗?? 比如你的代码中是在Sheets(1)中写入,那么公式中的“表2!R1C1:R10C2”是相对谁偏移的呢???追答跨表和不跨表的方式都是一模一样的, 相对引用都是相对与被写入的公式的单元格的偏移量.
“表2!R1C1:R10C2”就是绝对引用了, 相当于"表2!$A$1:$B$10", 绝对引用时不存在相对谁偏移的问题,因为引用的地址是不变的.

对于R1C1引用样式: R后的数字表示行标,C后的数字表示列标;数字后面没加括号就是绝对引用.
如R1C1就表示第1行第1列,相当于A1;
数字加了方括号表示相对与公式所在单元格的偏移值, 如公式在B2, 公式为=R[-1]C[1]就表示C1单元格.
如果偏移量为0,就可以省略不写,如R[0]C[1]就相当于RC[1], 如果B2的公式为=RC[-1], 就等价于=A2.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
奥数 没没过容器里水的物体的体积怎样求(容器
花山吴地址在哪,我要去那里办事
布兰妮是贾斯汀一生的最爱吗?和布兰妮分手,
柯南和小兰掉进水里的是哪集
男性可以用乳丹消结贴
4个4之间填上什么符号等于5
为什么我唱歌到高调唱不出来声音
3.78x7.8+37.8x0.12+378x0.01
如果一个男人家庭条件不好,家庭氛围也不好,
我和女方父母第一次说话不礼貌 她家人不同意
天津市河西区瑞江书画院我想知道这个在什么地
2016佛山医保可以取现吗
中国邮政储蓄银行买的理财产品保单掉了能补办
夏普AR2620s复印机出现太阳如何清除
努力反义词
推荐资讯
怎么识别紫砂壶
平安福重大疾病保险性价比如何?
包头市维信物业服务有限责任公司地址在什么地
办信用卡,银行会不会查房证,车证的真伪?
仪表盘背景灯能关闭吗?
谁有vip五的赛尔号号,我想共号,年费也行,
金士顿cloud2 g633 寒冰5哪个好
荣湾口味蛇地址在什么地方,想过去办事
在西安市交的社保在渭南生的孩子可以报销吗
太阳湾风景区这个地址在什么地方,我要处理点
互相的近义词是什么
木石世纪怎么取消
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?