Excel 表格怎样应用绝对的单元格坐格并且快速填充
已知公式=INDIRECT("sheet1!A"&ROW(A1)),
就是我想从sheet2中引用sheet1的所有数据,我想用公式INDIRECT("sheet1!A"&ROW(A1)),因为当sheet1中有变更时,比如增加或减少行列的话,sheet2会自动引用原来对应单元格的新值,那么我想要快速通过下拉或者横拉来填充公式INDIRECT("sheet1!A"&ROW(A1))要怎样实现,就是下拉时要自动填充为INDIRECT("sheet1!A"&ROW(A2)),横拉时自动填充为INDIRECT("sheet1!B"&ROW(B1))
从sheet2中引用sheet1的所有数据的方法有如下几种:
方法一:
1、打开Excel工作簿;
2、在Sheet2的A1单元格输入以下公式,然后向右向下填充公式
=IF(Sheet1!A1="","",Sheet1!A1)
公式表示:如果Sheet1的A1单元格为空,就返回空,如果Sheet1的A1为非空单元格,就返回Sheet1的A1数据。相对引用Sheet1的A1单元格,当向右或向下移动时,随着相对移动,引用对象也发生相对的改变,满足Sheet2的每一个单元格都相对引用Sheet1的对应单元格数据。
详见附图同表举例
方法二:
1、打开Excel工作簿;
2、在Sheet2的A1单元格输入以下公式,然后向右向下填充公式
=IF(OFFSET(Sheet1!$A$1,ROW(A1)-1,COLUMN(A1)-1)="","",OFFSET(Sheet1!$A$1,ROW(A1)-1,COLUMN(A1)-1))
公式表示:以Sheet1的A1单元格为基准,每向右移动一个单元格,基准单元格向右偏移一列,每向下移动一个单元格,基准单元格向下偏移一行。如果偏移后的单元格为空,就返回空;如果不为空,就返回偏移后的单元格数据。
详见附图同表举例
方法三:
1、打开Excel工作簿;
2、在Sheet2的A1单元格输入以下公式,然后向右向下填充公式
=IF(INDEX(Sheet1!A:A,ROW())="","",INDEX(Sheet1!A:A,ROW()))
公式表示:定位到Sheet1的A列,并返回当前行号所对应Sheet1的A列数据。当向右填充公式时,自动引用Sheet1的B列、C列……数据。
详见附图同表举例
方法四:
1、打开Excel工作簿;
2、在Sheet2的A1单元格输入以下公式,然后向右向下填充公式
=IF(INDIRECT("Sheet1!"&CHAR(64+COLUMN(A1))&ROW(A1))="","",INDIRECT("Sheet1!"&CHAR(64+COLUMN(A1))&ROW(A1)))
公式表示:通过INDIRECT函数引用Sheet1和CHAR(64+COLUMN(A1))返回的列号和ROW(A1)返回的行号构成的路径单元格数据,如果为空,则留空,如果不为空,就返回数据。
详见附图同表举例
注意:上述的四种方法都添加了IF函数来判断数据源是否为空,避免数据源为空时,返回0值(0值本身为数据),因此会造成数据源的数据到底是0还是空的混乱。如果数据源始终都有数据,那么可以将IF函数取消,而只取第三参数,即可。