VBA模板记录

文章目录

路径相关

获取当前工作簿路径

bash 复制代码
Application.ActiveWorkbook.Path '路径本身(不带工作簿名称)
Application.ActiveWorkbook.FullName '用于具有工作簿名称的路径。

文件夹相关

复制文件夹下所有内容到另一个文件夹

bash 复制代码
Sub copy_folder(byval sourceFolder As String, _
byval destinationFolder As String)

    Dim fso As Object
    
    ' 创建 FileSystemObject 对象
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    ' 调用 CopyFolder 方法进行复制
    On Error Resume Next
    fso.CopyFolder sourceFolder, destinationFolder, True ' True 表示允许覆盖
    If Err.Number <> 0 Then
        MsgBox "复制失败: " & Err.Description, vbExclamation, "错误"
        Err.Clear
    Else
        MsgBox "文件夹复制成功!", vbInformation, "完成"
    End If
    
    ' 释放对象
    Set fso = Nothing
End Sub

文件夹若存在则删除后新建,否则直接新建

bash 复制代码
Sub remove_and_make_folder(byval folder_path as string)
    Dim resFolder
    resFolder = Dir(folder_path, vbDirectory)   '判断路径为"D:\changeAfter_Files"的文件夹是否存在
    '如果不存在,就新建一个
    If resFolder = "" Then
        MkDir folder_path '("D:\changeAfter_Files")
    else
        rmdir folder_path '("D:\changeAfter_Files")
        MkDir folder_path '("D:\changeAfter_Files")
    End If
End Sub

工作簿相关

工作表相关

工作表若存在则删除后新建,否则直接新建

bash 复制代码
Sub remove_and_make_sheet(SheetName As String)
    Dim Exists As Boolean
    With ThisWorkbook
        On Error Resume Next
        Exists = (.Worksheets(SheetName).Name <> "")
        On Error GoTo 0
        If Not Exists Then
            .Sheets.Add After:=.Sheets(.Sheets.Count)
            .Sheets(.Sheets.Count).Name = SheetName
        End If
    End With
End Sub
相关推荐
不坑老师4 小时前
利用不坑盒子在WPS中插入网页,放映的电脑无需安装插件,直接就能显示网页!
microsoft·word·powerpoint·wps
寒秋丶5 小时前
AutoGen多智能体协作、人机交互与终止条件
人工智能·python·microsoft·ai·人机交互·ai编程·ai写作
wwlsm_zql15 小时前
石头科技专利创新:清洁机器人维护简化,效率升级
人工智能·科技·microsoft·机器人
wwlsm_zql18 小时前
微软Copilot+企业版亮相:GPT-5赋能,效率激增47%,多模态操控金融级安全
人工智能·gpt·microsoft·copilot
Leinwin1 天前
微软发布Azure Kubernetes Service Automatic国际版
microsoft·kubernetes·azure
火星资讯1 天前
勇立潮头:优艾智合打造“一脑多态”工业具身智能新范式
科技·microsoft·制造
rechol1 天前
嵌入式项目代码架构与分层笔记
microsoft
鹿鸣天涯1 天前
微软简化Windows更新!命名更加直观:只保留重点
microsoft
程序员霸哥哥1 天前
snipaste免费版下载安装使用教程(附安装包)
windows·microsoft·snipaste
宝桥南山2 天前
.NET10 - 尝试一下Blazor Web Assembly Standalone App的fingerprint新特性
microsoft·微软·c#·asp.net·.net·.netcore