Excel 从另一个单元格获取引用(url链接)?

Excel 从另一个单元格获取引用(url链接)?,excel,excel-formula,excel-2010,Excel,Excel Formula,Excel 2010,我想将单元格链接到外部文件。但外部文件的名称每天都在更改 我创建了一个包含外部文件完整地址的单元格(C:\Users\Main\Desktop\data\History\02092013.csv) 然后我将该单元格命名为HistoryFileReference 那么,为什么这不起作用呢 ='HistoryFileReference'!$A$2 当我按enter键时,会弹出一个名为“更新值:HistoryFileReference”的窗口,要求我选择一个文件 编辑:我不想通过excel“更新链接

我想将单元格链接到外部文件。但外部文件的名称每天都在更改

我创建了一个包含外部文件完整地址的单元格(C:\Users\Main\Desktop\data\History\02092013.csv

然后我将该单元格命名为HistoryFileReference

那么,为什么这不起作用呢

='HistoryFileReference'!$A$2
当我按enter键时,会弹出一个名为“更新值:HistoryFileReference”的窗口,要求我选择一个文件


编辑:我不想通过excel“更新链接”。感谢

要使其正常工作,您必须手动将括号放在文件名中,然后将其存储为

C:\Users\Main\Desktop\data\History\[02092013.csv]
在您命名为
HistoryFileReference的单元格中

现在打开CSV文件并保持打开状态。返回上表并键入此公式

=间接(“”&HistoryFileReference&“02092013”!$A$2”)

然后按Enter键,即可完成:)

注意:下次打开文件时,不要单击
更新链接
,否则上述公式生成的所有值将变为
#REF作为<代码>间接
不适用于关闭的文件

举个例子,我在
C:\
中放置了一个csv文件,如下面的屏幕截图所示,我正在尝试从单元格
A1
中检索值


要使其正常工作,您必须手动将括号放在文件名中,然后将其存储为

C:\Users\Main\Desktop\data\History\[02092013.csv]
在您命名为
HistoryFileReference的单元格中

现在打开CSV文件并保持打开状态。返回上表并键入此公式

=间接(“”&HistoryFileReference&“02092013”!$A$2”)

然后按Enter键,即可完成:)

注意:下次打开文件时,不要单击
更新链接
,否则上述公式生成的所有值将变为
#REF作为<代码>间接
不适用于关闭的文件

举个例子,我在
C:\
中放置了一个csv文件,如下面的屏幕截图所示,我正在尝试从单元格
A1
中检索值



您只能链接到外部Excel文件-CSV文件中没有“A2”。实际上,我已经链接到其他CSV文件(逗号分隔),一切都很好。您的CSV文件会打开吗?如果是,则可以使用
间接
,否则您必须使用VBAAll创建指向我的文件的超链接。我想检索单元格的内容。我不明白,打开CSV文件,我看到一个标准的excel表格。为什么
=“C:\Users\Main\Desktop\data\History\02092013.csv”$$2可以工作,但后者不行?@pufAmuf-但你必须先在Excel中打开该文件,对吗?此时它是一个Excel文件,而不是CSV。您只能链接到外部Excel文件-CSV文件中没有“A2”。实际上,我已经链接到其他CSV文件(逗号分隔),一切都很好。您的CSV文件会打开吗?如果是,则可以使用
间接
,否则您必须使用VBAAll创建指向我的文件的超链接。我想检索单元格的内容。我不明白,打开CSV文件,我看到一个标准的excel表格。为什么
=“C:\Users\Main\Desktop\data\History\02092013.csv”$$2可以工作,但后者不行?@pufAmuf-但你必须先在Excel中打开该文件,对吗?在这一点上,它是一个Excel文件,而不是CSV。感谢您提供非常详细的答案。但是,为什么我需要使用
&“02092013”
?我想使用这个公式,因为我不知道文件名是什么。我编写了一个脚本,将文件的完整路径插入到csv文件(history.csv)中。然后,这些数据被加载到我的主工作表中,单元格名为HistoryFileReference。其余的你知道。我知道的唯一保持不变的引用是HistoryFileReference,但我永远不知道文件名是02092013还是20092013。在excel中打开csv工作表时,除非你手动更改它或文件名对于工作表名称来说太长。当您手动键入公式时,您会注意到还指定了工作表名称。因此,在公式中使用了“02092013”。这是您将手动键入的公式,或者手动链接到单元格时将得到的公式。
='C:\[02092013.csv]02092013'!$a$1
(根据我的示例)Mhm好的,那么在
=间接(“'”&HistoryFileReference和“02092013”!$A$2“
的情况下,我也可以从另一个命名的单元格中检索
02092013
部分吗?然后我可以编写一个脚本,将完整路径和完整名称分别写入不同的单元格。
=间接(““&HistoryFileReference和HistoryFileName&”!$A$2”)
我假设
HistoryFileName
02092013
感谢您提供了非常详细的答案。但是为什么我需要使用
和“02092013”
?我想使用这个公式,因为我永远不知道文件名是什么。我编写了一个脚本,将文件的完整路径插入csv文件(history.csv)。然后将该数据加载到我的主工作表中,并将该单元格命名为HistoryFileReference。其余的你都知道。我所知道的唯一保持不变的引用是HistoryFileReference,但我永远不知道文件名是02092013还是20092013。在excel中打开csv工作表时,它将与文件同名,除非您手动更改它或文件名对于工作表名来说太长。手动键入公式时,您会注意到还指定了图纸名称。因此在公式中使用了“02092013”。这是您将手动键入的公式,或者手动链接到单元格时将得到的公式
='C:\[02092013.csv]02092013'$A$1
(按m计)