vba 打开多个excel文件 *** 作模版

vba 打开多个excel文件 *** 作模版,第1张

sub test()

dim arr()

dim wb as workbook

arr = application.getOpenFileName("Excel文件,*.xls*",2,,,true)       ‘  *.xls*表示打开的文件格式为xls*,true表示可以多选

if arr (1) <>"False" then

    for i = Lbound(arr) to Ubound(arr)        'Lbound和Ubound分表表示数组的上标和下标

        set wb = workbooks.open(arr(i))

         ......

          ......            '写需要对打开工作簿的 *** 作

        wb.close

    next

end if

end sub

以下是使用宏录制的方法获得的代码:

Sub 宏2()

'我是使用excel打开的一个D:\test\1.txt

    ChDir "D:\test"

    Workbooks.OpenText Filename:="D:\test\1.txt", Origin:=936, StartRow:=1, _

        DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter _

        :=False, Tab:=False, Semicolon:=False, Comma:=False, Space:=False, _

        Other:=True, OtherChar:="、", FieldInfo:=Array(1, 1), TrailingMinusNumbers _

        :=True

    Windows("工作簿1").Activate

End Sub

更为简洁的是直接这样:

Workbooks.OpenText Filename:="D:\test\1.txt"

注意 c:\a 目录下的文件不要太多,免得死机

Sub 打开excel表格()

Dim myPath$, myFile$, AK As Workbook

Application.ScreenUpdating = False '冻结屏幕,以防屏幕抖动

myPath = "c:\a\" '把文件路径定义给变量

myFile = Dir(myPath &"*.xls") '依次找寻指定路径中的*.xls文件

Do While myFile <>"" '当指定路径中有文件时进行循环

If myFile <>ThisWorkbook.Name Then

Set AK = Workbooks.Open(myPath &myFile) '打开符合要求的文件

End If

myFile = Dir '找寻下一个*.xls文件

Loop

Application.ScreenUpdating = True '冻结屏幕,此类语句一般成对使用

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11663467.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存