alex_bn_lee

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

【C002】Excel VBA - 文件打开关闭

来源:http://blog.csdn.net/alexbnlee/article/details/6924207

 1 → 实现标准的“打开”对话框,并获取用户文件名,而不必真正打开任何文件。获取文件的FullName
表达式.GetOpenFilename(FileFilter,FilterIndex,Title, ButtonText, MultiSelect)
FileFilter:过滤文件Title:标题MultiSelect:可以多选

复制代码
Sub Stop1()
    Dim fileInformation As String
    Dim fi As Workbook
    fileInformation = Application.GetOpenFilename( _
    filefilter:="Excel 工作簿(*.xlsx),*.xlsx", _
    Title:="打开Excel文件")
    MsgBox fileInformation
    Shell "C:\Program Files\Microsoft Office\Office14\excel.exe " & fileInformation, vbMaximizedFocus
End Sub
复制代码

Application.GetOpenFilenameStab Me!!!

 2 Shell函数

执行一个可执行文件,返回一个 Variant (Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。

语法
Shell(pathname[,windowstyle])

Shell "C:\WINDOWS\system32\calc.EXE", 1    ' 完成Calculator。

也可以这样:

Sub djfkl()
    Dim RetVal
    RetVal = Shell("C:\WINDOWS\system32\calc.EXE", 1)    ' 完成Calculator。
End Sub

Shell 函数Stab Me!!!

 3 → 打开文本文件参考:http://infos.edulife.com.cn/200503/2005038517.html

 4 → 用Shell 函数打开非可执行文件的方法

方法:Shell "App.PathFile.Path", vbMaximizedFocus
其中地址分成三部分,第一部分是可执行程序的位置,第二部分是一个空格,第三部分是需要打开文件的路径

Shell "C:\Program Files\Microsoft Office\Office14\excel.exe " & fileInformation, vbMaximizedFocus

就是打开Excel文件的方法~

Dim filePath As String
filePath = Application.GetOpenFilename("Excel(*.xlsx), *.xlsx", 1, "Open Excel")
If Len(filePath) > 5 Then
    Shell "C:\Program Files\Microsoft Office\Office14\excel.exe " & filePath, vbMaximizedFocus
Else
    MsgBox "Sorry!!!"
End If

 5 → 增加Workbook

Workbook.Add      '增加工作簿

Workbooks.Open Filename:=ThisWorkbook.Path & "\工作簿 - " & i & ".xlsx"

打开指定位置的文件

 6 → 关闭Workbook

ActiveWorkbook.Close SaveChanges:=True, Filename:=ThisWorkbook.Path & "\工作簿1"

第一个参数表示保存改变,第二个参数表示工作簿名称,同时可以加入路径

复制代码
Sub addSheet()
    For i = 1 To 10
        Workbooks.Add
        For j = 1 To 10
            Cells(j, 1) = j
        Next
        ActiveWorkbook.Close savechanges:=True, Filename:=ThisWorkbook.Path & "\工作簿 - " & i
    Next
End Sub
复制代码

         

窗口最大化

Application.WindowState = xlMaximized

窗口最小化

窗口正常化



posted on   McDelfino  阅读(1347)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示