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
相关推荐
许泽宇的技术分享16 分钟前
Text2API与Text2SQL深度对比:自然语言驱动的数据交互革命
数据库·windows·microsoft
今天也要学习吖12 小时前
Azure TTS Importer:一键导入,将微软TTS语音接入你的阅读软件!
人工智能·学习·microsoft·ai·大模型·aigc·azure
派拉软件1 天前
微软AD国产化替换倒计时——不是选择题,而是生存题
网络·安全·microsoft·目录管理·微软ad替换·身份与访问控制管理iam
白书宇2 天前
12.从零开始写LINUX内核--控制台初始化
linux·c语言·驱动开发·嵌入式硬件·microsoft·iot
ciku3 天前
Spring Ai Advisors
人工智能·spring·microsoft
智能汽车人3 天前
行业分析---领跑汽车2025第二季度财报
人工智能·microsoft
Leinwin4 天前
微软行业案例:英格兰足球超级联赛(Premier League)
microsoft
张人玉5 天前
C#读取文件, IO 类属性及使用示例
microsoft·c#
edisao6 天前
第一篇:从C-803金融战线到K-119认知武器:五步打造多维度竞争护城河
microsoft·金融