Índice
O código a seguir validará se um nome de arquivo é válido. Isso é útil se o seu código requer um nome de arquivo inserido pelo usuário. Ele verificará se o nome do arquivo é válido antes de prosseguir e possivelmente gerar um erro.
Validar o nome do arquivo
Esta função testa se a variável ‘FileName’ é um nome de arquivo válido:
1234567891011121314151617181920212223242526272829303132333435363738394041 | Função ValidateFileName (ByVal FileName As String) As BooleanApplication.ScreenUpdating = FalseDim wb como pasta de trabalho'Não verifique se há nada no nome do arquivo.If FileName = "" ThenValidateFileName = FalseGoTo ExitProcFim se'Criar arquivo temporárioEm caso de erro GoTo InvalidName:Definir wb = Workbooks.Addwb.SaveAs Environ ("temp") & "\" & FileName & ".xlsx", 51On Error Resume Next'Fechar arquivo temporário do Excelwb.Close False'Excluir arquivo temporário do ExcelKill Environ ("temp") & "\" & FileName & ".xlsx"'Nome do arquivo validado - função de saídaValidateFileName = TrueGoTo ExitProc'Se o arquivo não puder ser criadoNome inválido:On Error Resume Next'Fechar arquivo temporário do Excelwb.Close False'Nome do arquivo não validado - função de saídaValidateFileName = FalseExitProc:Application.ScreenUpdating = FalseFunção Final |
Você pode chamar a função assim:
12345 | Sub test_ValidateFileName ()Debug.Print ValidateFileName ("fda? /")End Sub |
Este procedimento de teste produzirá TRUE ou FALSE na janela imediata.