/我想在未选择正确的excel文件时显示一个消息框

时间:2019-05-07 08:51:42

标签: excel vba

 Private Sub CommandButton1_Click()
    Application.ScreenUpdating = False

    Dim currentWorkbook    As Excel.Workbook
    Dim otherWorkbook     As Excel.Workbook
    Dim workbookName      As Variant

    Set currentWorkbook = ActiveWorkbook
    workbookName = Application.GetOpenFilename(workbookNamePath)


    If Not workbookName = False Then
        Set otherWorkbook = Workbooks.Open(workbookName)
        Workbooks("name.csv").Sheets("sheet 2").Copy Before:=ThisWorkbook.Sheets(2)
            otherWorkbook.Close False
        Set otherWorkbook = Nothing
    End If

    MsgBox "done?", Title:="Name", Buttons:=vbInformation
    Application.ScreenUpdating = False

 End Sub 

**因此,当我选择name.csv以外的其他文件时,我想给出一条消息“选择正确的文件”,而不是给我一个错误代码。我是vba的新手,请帮助

1 个答案:

答案 0 :(得分:0)

@Luuklag是绝对正确的。在像这样打开文件之前,我会正式检查文件名:

If Not workbookName = False Then
    if mid(workbookname, instrrev(workbookname,"\")+1) <> "name.csv" Then
         MsgBox "Select the right file...."
    End If

GetOpenFileName返回完整路径,因此您甚至可以检查路径。