使用单元格中的数字来生成单元格引用
我想要做的事情可能会更好地实现一个数据库,但是我对它们的经验非常有限,只需要经常更改信息。
我所拥有的是每行有8个相关数据单元的表单。
我想在另一个工作表中input一个数字到一个单元格中,并且有一组单元格使用该数字来引用另一个表格中的数据。
例如,在Sheet1中,我可以有以下(图1):
| A | B | C | D | E | F | G | H -----+-----+-----+-----+-----+-----+-----+-----+----- 101 | Dep | 700 | Sta | 100 | Sta | 300 | Dep | 900
在表2中,我想通过在1个单元格中input行号来实现,在这8个单元格中复制下面的数据(图2):
| A | B | C | D | -----+-----+-----+-----+-----+ 1 | "Row Number" | -----+-----+-----+-----+-----+ 2 | =A# | =B# | =D# | =C# | -----+-----+-----+-----+-----+ 3 | =E# | =F# | =H# | =G# | -----+-----+-----+-----+-----+
是的,我知道上面的这些公式并没有引用其他表 – 这是为了节省空间。
其中,如果使用上面的示例行,应该看起来像这样(图3):
| A | B | C | D | -----+-----+-----+-----+-----+ 1 | 101 | -----+-----+-----+-----+-----+ 2 | Dep | 700 | 100 | Sta | -----+-----+-----+-----+-----+ 3 | Sta | 300 | 900 | Dep | -----+-----+-----+-----+-----+
所以,在上面的例子中(图3),我需要在单元格A2-D2和A3-D3中input公式,以便自动使用A1中的数字作为单元格引用的一部分,以便从另一个单元格中打印数据片。
那有意义吗? 我希望如此,因为我在第一张纸上有三百多行,在第二张上有另外七十行×七个栏。
最后,我只想说,我想尽可能避免使用VBA等编程语言。
检查一下INDIRECT()函数。
在第二张纸上的例子A2中,input:
=INDIRECT("Sheet1!"&"A"&$A$1)
根据以下示例,根据网格中的需要,通过更改“&”A“部分以引用Sheet1中的列B,C,D等,将此公式扩展到应用于其他目标单元格:
=INDIRECT("Sheet1!"&"B"&$A$1) =INDIRECT("Sheet1!"&"C"&$A$1) =INDIRECT("Sheet1!"&"D"&$A$1)
这些公式将在单元格A1中引用所选的“行号”,并将Sheet 1中的相关数据拖到Sheet 2中。
您可以使用INDIRECT
function来做到这一点
Returns the reference specified by a text string. References are immediately evaluated to display their contents. Use INDIRECT when you want to change the reference to a cell within a formula without changing the formula itself.
http://office.microsoft.com/en-gb/excel-help/indirect-HP005209139.aspx