我正在创建一个报告文档,该文档将自动计算学生在教室中获得的总成绩。要相乘的值在Sheet1,Sheet2,Sheet3的单元格B22和E22中,并在Sheet4中显示结果。 Sheet1,Sheet2和Sheet 3具有相同的格式和设计。可以用来相乘的方法或公式是什么?
Sheet1中的B22 * E22,它将在sheet4中显示结果,
并且当我在工作表中包含结果的单元格上使用自动填充句柄时,excel应遵循该模式在不同的工作表上自动乘以相同的单元格;
说
Sheet2中的B22 * E22
Sheet3中的B22 * E22
以此类推...
我尝试手动计算;
我在单元格A1中的Sheet4上说过
='Sheet1'!B22 *'Sheet1'!E22
在单元格A2中,='Sheet2'!B22 *'Sheet2'!E22
在单元格A3中,='Sheet3'!B22 *'Sheet3'!E22
成功了。但是这里的问题是,由于我有很多工作表(大约62张工作表),并且要进行与上述操作类似的其他单元格计算(在其他工作簿中),因此这项工作纯粹是手动且耗时的。
当我在单元格A1中输入公式='Sheet1'!B22 *'Sheet1'!E22时, 我尝试使用自动填充手柄拖动并填充单元格A2和A3。
但是它不起作用,因为excel不断更改单元格引用。
这是我在Sheet4上使用的公式
在A1 ='Sheet1'!B22 *'Sheet1'!E22
当我使用自动填充手柄时,填充公式并在其中添加值
A2,它就是='Sheet1'!B23 *'Sheet1'!E23
A3,这=='Sheet1'!B24 *'Sheet1'!E24
我想要一个公式或方法,当我使用字段句柄时,excel应该通过该公式或方法维护单元格引用以进行计算(乘法),即
B22和E22
,而是改为更改工作表。也就是说,
在Sheet4上,在单元格A1中:='Sheet1'!B22 *'Sheet1'!E22
A2:='Sheet2'!B22 *'Sheet2'!E22
A3:='Sheet3'!B22 *'Sheet3'!E22。
以上公式是我期望得到的结果。
但是实际输出是
在Sheet4上的单元格中
A1:='Sheet1'!B22 *'Sheet1'!E22
A2:='Sheet1'!B23 *'Sheet1'!E23
A3:='Sheet1'!B24 *'Sheet1'!E24。
任何帮助/线索将不胜感激!
谢谢。!
答案 0 :(得分:1)
=INDIRECT("'Sheet"&ROW(A1)&"'!B22")*INDIRECT("'Sheet"&ROW(A1)&"'!E22")
将以上公式放在一个空单元格中,然后向下复制。
INDIRECT函数将带有引用的文本转换为excel引用。不过要注意的是INDIRECT是一个易失函数。这不是世界的尽头。易失性函数只是意味着它会在工作簿中的任何更改时随时重新计算。常规函数仅在影响它的内容发生变化时才会重新计算。换句话说,如果您的工作簿中充满了易失性功能,则可能会在工作簿中发现一些性能问题,因为所有更改都在单元格发生更改时发生
显然,我应该听听我自己的文章。 INDIRECT转换引用。显然,它不适用于数学运算符。因此,对每个参考都使用间接,并使数学运算符不使用间接。
上图显示了上述公式的副本和粘贴。如果该工作表不存在,则会因找不到地址而抛出错误。
答案 1 :(得分:0)