Access VBA:如何在导入之前检查所选文件是否为excel格式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Access VBA:如何在导入之前检查所选文件是否为excel格式相关的知识,希望对你有一定的参考价值。
我使用以下代码导入csv文件。我想修改它为excel。我将.csv更改为.xlsx,但它无效。有帮助吗?
Const msoFileDialogFilePicker As Long = 3
Dim objDialog As Object
Set objDialog = Application.FileDialog(msoFileDialogFilePicker)
With objDialog
.AllowMultiSelect = False
.SelectedItems(1) = Trim$(.SelectedItems(1))
.Show
If .SelectedItems.Count = 0 Then
MsgBox "No file selected."
Exit Sub
ElseIf Right(.SelectedItems(1), 4) <> ".csv" Then
MsgBox "You must select a csv (.csv) file.", vbCritical
Exit Sub
答案
你的错误非常简单。你正在检查最后4个字符,如果它是".xlsx"
。由于".xlsx"
是5个字符,最后4个字符不能是".xlsx"
将Right
中的数字更改为5:
ElseIf Right(.SelectedItems(1), 5) <> ".xlsx" Then
或者使用文件管理器上的过滤器以正确的方式执行,因此人们只能选择xlsx:
With objDialog
.AllowMultiSelect = False
.Filters.Add "Excel files", "*.xlsx",1
以上是关于Access VBA:如何在导入之前检查所选文件是否为excel格式的主要内容,如果未能解决你的问题,请参考以下文章