打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
excel引用文件名变量2
userphoto

2023.04.08 浙江

关注

【2】excel单元格引用文件名变量文件名变量 

1E)excel中如何调用文件名为变量的数据

https://zhidao.baidu.com/question/261907290.html?qbl=relate_question_0&word=%B5%A5%D4%AA%B8%F1%D6%D0%C8%E7%BA%CE%B1%E0%D0%B4%CE%C4%BC%FE%C3%FB%B1%E4%C1%BF

 问:比如,C1单元的内容是“201001.xls”,

      C2的内容就是201001.xls的sheet1的B5单元内容,如何表示C2, 

 答:=INDIRECT("["&C1&"]sheet1!B5")

   被引用的这个201001.xls必须处于打开状态。

2E)excel 如何将需引用的同文件夹下的文件名列为变量

https://zhidao.baidu.com/question/392181972204591805.html?qbl=relate_question_2&word=%B5%A5%D4%AA%B8%F1%D6%D0%C8%E7%BA%CE%B1%E0%D0%B4%CE%C4%BC%FE%C3%FB%B1%E4%C1%BF

 问:现在单元格位置:

   'E:\会计\报税\廊坊\2014\[10.xlsx]科目余额表'!$C$4 

  需引用外部文件单元格位置:

   'E:\会计\报税\廊坊\2014\[09.xlsx]科目余额表'!$H$4 

  如何将文件名“??.xlsx”设置成为变量:当前文件名(月份-1).xlsx 谢谢...

 答:一般用INDIRECT来处理。加上ROW()来确定文件名。如果你现在的行号是12,

  那么引用9.xlsx的公式

   =indirect("'E:\会计\报税\廊坊\2014\["&row()-3&".xlsx]科目余额表'!$H$4")

3E) 以单元格内容为文件名的变量,跨文件引用其它Excel数据

http://www.exceltip.net/thread-87567-1-1.html

 需在B2~F100区域内创建数据,即在此区域内全是引用后的数值。而且这个区域根据情况变大或缩小。

    我知道2个方法:

  方法1:=INDIRECT("'E:\234\["&A1&".xlsx]Sheet1'!B7")

      此法不足: 用上面的办法不用复制、粘贴,但需要打开被引用的文件,而且被引用的文件被关闭之后,被引用的数据就没了。

  方法2:="='E:\234\["&A1&".xlsx]Sheet1'!A1"

      此法不足:必须对公式进行复制,然后粘贴到其它单元格里,才能引用数据;优点是无需打开被引用的文件。

  有没有什么办法,不需要打开被引用的文件;也不需要复制公式、再粘贴的办法?

3)文件名函数:

3.1)要在工作表的一个单元格中插入当前工作簿名称时,使用 CELL() 函数, 显示如下.

E:\PcSoftware\Office\Excel\[文件名函数.xls]sheet1

=CELL("filename")

问题是它带有驱动器盘符和文件的全部路径

你需要使用文本函数挑选出工作表或工作簿名称

选择路径

E:\PcSoftware\Office\Excel\

=MID(CELL("filename"),1,FIND("[",CELL("filename"))-1)

选择工作簿名称

文件名函数.xls

=MID(CELL("filename"),FIND("[",CELL("filename"))+1,FIND("]",CELL("filename"))-FIND("[",CELL("filename"))-1)

选择工作表名称

sheet1

=MID(CELL("filename"),FIND("]",CELL("filename"))+1,255)

4E)excel 变量 把文件路径和文件名定义成一个变量

https://zhidao.baidu.com/question/24424774.html?word=%B2%BB%CD%AC%C2%B7%BE%B6%B5%C4%CE%C4%BC%FE%BC%D0%C8%E7%BA%CE%D7%F7%CE%AA%B9%AB%CA%BD%D6%D0%B5%C4%B1%E4%C1%BF

 公式是导入 外部数据,也就是说数值是另外一个XLS文件里的数值 如下 : D1='F:\S\[600094.XLS]Sheet1'!A555 现在的问题是 A1=600094 B1=555 C1=1 如何将A1 C1和B1当成变量 放在 D1里面? 我想这样 D1='F:\S\[**A1**.XLS]Sheet**C1**'!A**B1** ...

 答1)可以实现的,它需要在VBA中写一段过程,当你在前三个单元格中输入好之后,A1=600094 B1=555 C1=1 D1单元格就会自动生成公式:D1='F:\S\[600094.XLS]Sheet1'!A555 

你把邮箱给我,我发个EXCEL文件给你(注意:这段代码要求你的另一个工作簿必须和我的这个EXCEL文件是在同一目录下,才可以使用),你不发给我也行,我把代码写在下面:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim ro As Integer, co As Integer

ro = Target.Row

co = Target.Column

    If co = 1 Or co = 2 Or co = 3 Then

        If Cells(ro, 1) <> "" And Cells(ro, 2) <> "" And Cells(ro, 3) <> "" Then

           Cells(ro, 4) = "='" & ThisWorkbook.Path & "\[" & Cells(ro, 1) & ".xls]sheet" & Cells(ro, 3) & "'!a" & Cells(ro, 2)

        End If

    End If

End Sub

 答2)

【】

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Python中xlwings和openpyxl的常用方法_xlwings和openpyxl哪个好用
Excel VBA学习笔记:VBA如何选取工作簿文件,打开工作簿
EXCEL如何在单元格中输入文件名,根据文件名在其他单元格引用该路径下文件数据
openpyxl初入门
零代码编程:用ChatGPT进行批量重命名时需要注意特殊字符
Excel如何实现跨文件表引用数据
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服