① vba怎样打开指定路径的excel文件
打开文件如下:Workbooks.Open ("C:\对账单\对帐单.xlsx")这里你可以把“C:\对账单\”换成你的绝对路径,你可以用:a = ThisWorkbook.Patha = ThisWorkbook.PathWorkbooks.Open ("" & a & "&" \ "&对帐单.xlsx")来获取你当前表的绝对路径,然后再打开,因为不知道你的具体情况,如果有问题可以hai我 如果当前文件夹下还有A文件夹可以用代码:Workbooks.Open ("" & a & "&" \ A\"&b.xlsx")Microsoft Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的个人计算机数据处理软件。在1993年,作为Microsoft Office的组件发布了5.0版之后,Excel就开始成为所适用操作平台上的电子制表软件的霸主。
② 用vba如何导入一个文件夹里的文件绝对路径(包含扩展名)到excel里
Sub MMM()
Dim myPath$, myFile$, i&
Application.ScreenUpdating = False
myPath = "D:\新建文件夹" & "\"
myFile = Dir(myPath & "*.*")
Do While myFile <> ""
i = i + 1
Cells(i, 1) = myPath & myFile
myFile = Dir
Loop
Application.ScreenUpdating = True
End Sub
③ 如何通过VBA,获得本文件所在的文件夹路径。
Subs()
Dimpth$
pth=ThisWorkbook.Path
MsgBox"本文件的路径为:"&pth
EndSub
④ Excel VBA 基础(04.3) - 常用扩展库之FileSystemObject
本节介绍使用VBA处理文件IO(input/output)的扩展库FileSystemObject(FSO)。FSO在之前多表交互案例中已初步接触,通过指定文件夹路径遍历所有文档,对Excel文件进行操作。以下实战示例:修改指定根路径下所有文件名称和最后修改时间。
在年报审计中,可能在约定的时间范围外已开始或结束,内部稽核通常要求调整所有工作底稿的最后修改时间。此示例要求遍历文件路径,获取文件对象,修改各文件的LastModify属性,注意生成随机时间。
首先,遍历文件路径,获取文件对象。使用FSO下的.getFolder方法,接收文件夹绝对路径参数。通常采用相对路径,确定目标文件夹绝对路径,即宏工作表路径结合指定目标文件夹路径。获取子文件夹和文件集合,对于子文件夹进行递归遍历,单个文件处理。
将此方法封装,处理函数为过程文件。设置前缀字符串,如年度及索引号。修改文件最后修改时间通过CMD shell扩展,更改文件.ModifyDate属性,生成起始到终止日之间的随机日期。
生成指定范围内的日期和时间,使用之前文章中介绍的函数。整个代码涉及在模块作用域内声明变量、常量,适用于当前模块。不同功能封装,便于维护与协作。
理解递归遍历文件路径方法,解决大多数问题。文本文件读写操作不常见,相关示例放在实战部分。FSO中的File、Folder对象属性请查阅API文档。
本期示例文件提供下载。如有问题,请在下方留言。本专栏文章版权归属作者,未经授权,除知乎日报外,任何人不得转载。
⑤ 专家您好,vba下如何打开路径名带空格的目录,双引号""的转义符
完全可以用其它办法!
而不必用sheel来打开目录
打开目录的目的在于对其下的文件或者文件夹进行操作!!!
而VBA有很多方法可以直接操作文件和文件夹,而不必打开目录
如果是改变当前目录也完全可以用CHDIR
虽然没有回答楼主的问题,但是个人觉得如果有直接操作的方法,建议采用直接指定绝对目录操作文件等等,而不必先打开目录.
如果非要这么做,可以这样
cdstr="E:\my 4s"
Shell "explorer " & cdstr
⑥ vba 遍历指定文件夹(含子目录)获取文件名,哪种方法速度最快
Sub LoopAllExcelFilesInFolder()
Dim wb As Workbook
Dim myPath As String
Dim myFile As String
Dim myExtension As String
Dim FldrPicker As FileDialog
'这里很关键,决定宏执行快慢的关键
Application.ScreenUpdating = False
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
'打开目录选择框
Set FldrPicker = Application.FileDialog(msoFileDialogFolderPicker)
With FldrPicker
.Title = "请选择目录"
.AllowMultiSelect = False
If .Show <> -1 Then GoTo NextCode
myPath = .SelectedItems(1) & "\"
End With
'取消选择
NextCode:
myPath = myPath
If myPath = "" Then GoTo ResetSettings
'指定过滤的文件后缀
myExtension = "*.xls*"
'遍历全路径
myFile = Dir(myPath & myExtension)
'循环处理每一个文件
Do While myFile <> ""
'打开
Set wb = Workbooks.Open(Filename:=myPath & myFile)
'确保工作簿被打开,在处理下一个文件时
DoEvents
'设置背景色
wb.Worksheets(1).Range("A1:Z1").Interior.Color = RGB(51, 98, 174)
'保存工作簿
wb.Close SaveChanges:=True
'确保工作簿被关闭,在处理下一个文件时
DoEvents
'接着处理下一个
myFile = Dir
Loop
'提示处理完成
MsgBox "处理完成!"
ResetSettings:
'恢复设置
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub