如何获取现有连接的外部文件的文件名 – Excel
我将一个外部文本文件(.csv)导入到名为“SourceData”的Excel工作表中。
连接被称为“数据”。 每当我刷新我的工作簿,Excel会要求我select我的源文件。 我的源文件具有相同的数据结构,它们是由其他数据库自动生成的:
REPL_STATS_010314130000.CSV REPL_STATS_030314060001.CSV ....
我的问题是:
- 如何获取当前导入到工作表“SourceData”的外部csv文件的文件名,以便在刷新连接时,该名称显示在另一个名为“Summary”的工作表的单元格(例如A1)中
例如:点击全部刷新后,select文件“REPL_STATS_010314130000.CSV”来更新我的数据源,那么单元格A1会显示“REPL_STATS_010314130000.CSV”
我已经尝试几天search解决scheme,但是我无法完成工作。
你可以build议forms的VBA代码,可以得到这个信息?
先谢谢你!
感谢蒂姆·威廉斯build议我写下面的代码,并将此代码放在Sheet1(SourceData)中:
Private Sub Worksheet_Change(ByVal Target As Range) Dim ConSource As String ConSource = Worksheets("SourceData").QueryTables("Data").Connection Worksheets("Summary").Range("A1").Value = "Source: " & Right(ConSource, Len(ConSource) - InStrRev(ConSource, "\")) ConSource = "" End Sub