1、直接打开工作簿 Workbooks.Open FileName:="C:S.xlsx" 2、使用变量打开工作簿,无疑此法灵活。 Dim wkb As Workbook Set wkb = Workbooks.Open(FileName:="C:S.xlsx") 必须保证C盘存在123.xlsx文件,否则出错; 又如,若123.XLSX文件存在,但路径为:C:%6S.xlsx , 该路径456文件夹并不存在,也会报错。 就是保证路径真实存在。 3、关闭工作簿 Workbooks("123.xls").Close 如使用了变量Wkb,则Wkb.Close 使用Close方法关闭工作簿时,如果改变了工作簿内容,将提示用户保存更改。 4、关闭工作簿,不保存更改。 Dim wkb As Workbook Set wkb = Workbooks.Open(Filename:="C:S.xlsx") Range("a1") = "套路Excel" wkb.Close savechanges:=False 不保存 Range("a1") = "套路Excel" 的更改。 5、关闭工作簿,保存更改。 Dim wkb As Workbook Set wkb = Workbooks.Open(Filename:="C:S.xlsx") Range("a1") = "套路Excel" wkb.Close savechanges:=True 保存 Range("a1") = "套路Excel" 的更改。 其中,savechanges:= 可以省略。 6、Close方法可以将工作簿另存为到指定路径。 Sub 更改() Dim wkb As Workbook Set wkb = Workbooks.Open(Filename:="C:S.xlsx") Range("a1") = "套路Excel" wkb.Close True, "C:%6.xlsx" End Sub 7、关闭一个工作簿和一次性关闭所有工作簿。 关闭一个工作簿:Workbook.Close,如 ActiveWorkbook.close 一次性关闭所有工作簿:workbooks.close Sub 关闭Excel应用程序不保存工作簿() Application.DisplayAlerts = False '关闭提示 Application.Quit '退出应用程序,即Excel界面 Workbooks.Close '关闭所有工作簿 Application.DisplayAlerts = True '恢复提示 End Sub 8、获取工作簿的路径信息 一旦打开了某工作簿,就很容易获取该工作簿的路径、完整的路径和文件名称或仅获取文件名称。 Set wkb = Workbooks.Open(Filename:="C:S.xlsx") wkb.path返回 C: wkb.fullname 返回C:S.xlsx 假如要操作的所有工作簿都在同一个文件夹(同一路径),我们经常用ThisWorkbook来获取路径信息。如,返回代码所在的工作簿的路径信息。 练习1:跨工作簿查询 同路径下跨工作簿查询,代码参考如下: 若不在同一个文件夹,只需修改路径打开指定文件即可。 如将操作工作簿.xlsm放在桌面,打开123.xlsx的路径更改为: 路径 = "C:UsersAdministratorDesktop数据" 工作簿名称 = "123.xlsx" 完整路径 = 路径 & "" & 工作簿名称 2、工作表另存为工作簿 参考代码为: 若没有 Application.DisplayAlerts = False 屏蔽提示,将提示同名文件已经存在,是否替换。 使用屏蔽提示,将覆盖现有的同名文件。 Excel示例文件下载: 链接: https://pan.baidu.com/s/1bdO-tTr9f3eEVP66ufvllQ 密码: 9i68 |
|