如何用vba修改文件后缀名或扩展名?

excel 文件的后缀名或者扩展名有xls、xlsm、xlsx等。

对于2007版本(含)以上的excel文件采用压缩文件的格式,可以通过修改后缀名为zip来查看里面的内容。

为了实现修改文件后缀名或者扩展名的目的,可以使用 Name语句,代码如下:

Sub QQ1722187970()
    Dim sOld As String
    Dim sNew As String
    sOld = GetFilePath
    If Len(sOld) Then
        sNew = Mid(sOld, 1, InStr(1, sOld, ".") - 1) & ".zip"
        Debug.Print sNew, sOld
        Name sOld As sNew
    End If
End Sub
Function GetFilePath() As String
    '声明一个FileDialog对象变量
    Dim oFD As FileDialog
'    '创建一个选择文件对话框
    Set oFD = Application.FileDialog(msoFileDialogFilePicker)
    '创建一个选择文件夹对话框
'    Set oFD = Application.FileDialog(msoFileDialogFolderPicker)
    '声明一个变量用来存储选择的文件名
    Dim vrtSelectedItem As Variant
    With oFD
        '允许选择多个文件
        .AllowMultiSelect = True
        '使用Show方法显示对话框,如果单击了确定按钮则返回-1。
        If .Show = -1 Then
            '遍历所有选择的文件
            For Each vrtSelectedItem In .SelectedItems
                '获取所有选择的文件的完整路径,用于各种操作
                 GetFilePath = vrtSelectedItem
            Next
            '如果单击了取消按钮则返回0
        Else
        End If
    End With
    '释放对象变量
    Set oFD = Nothing
End Function

 

       

仅有1条评论 发表评论

  1. MstnFan /

    这段代码有严重的错误。如果路径中也有句点的话,就完全错误了。

发表评论