Compartilhamento de tecnologia

Como abrir, salvar e fechar pasta de trabalho do Excel em VBA

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Prefácio

Esta seção apresentará como usar o método VBA para abrir uma pasta de trabalho do Excel, salvar e fechar a pasta de trabalho do Excel e usar os métodos Abrir, Salvar e Fechar, respectivamente.


1. Use o método Open para abrir a pasta de trabalho

Workbooks.Open(NomeDoArquivo,UpdateLinks,SomenteLeitura,Formato,Senha,WriteResPassword,Ignorar-SomenteLeituraResoma,Origem,Delimitador,Editável,Notificar,Conversor,AdicionarAoMru,Local,Corrompido-Carregar)
虽参数较多,但只有FileName为必填参数,表示需要打开的工作簿文件名,关于参数说明请参考下表:

parâmetroilustrar
Nome do arquivoO nome do arquivo da pasta de trabalho que precisa ser aberta e o caminho absoluto do arquivo são obrigatórios.
AtualizaçõesLinks Especifica como as referências externas (links) na pasta de trabalho são atualizadas.Os valores possíveis são 0 ou 3, o que significa respectivamente não atualizar referências externas ao abrir a pasta de trabalho e atualizar referências externas ao abrir a pasta de trabalho.
Somente leituraQuando True, significa abrir a pasta de trabalho no modo somente leitura.
Formatar Ao abrir um arquivo de texto, use este parâmetro para especificar o delimitador. Os valores possíveis são 1 (tabulação), 2 (vírgula), 3 (espaço), 4 (ponto e vírgula), 5 (nenhum), 6 (caractere personalizado, especificado pelo parâmetro Delimitador)
Senha Se a pasta de trabalho a ser aberta tiver uma senha de abertura definida, use este parâmetro para fornecer a senha.Se uma senha for definida, mas este parâmetro não for preenchido, uma caixa de diálogo aparecerá solicitando que o usuário insira a senha.
EscreverResSenhaSe a pasta de trabalho a ser aberta possuir uma senha para proteger a estrutura, utilize este parâmetro para fornecer a senha correspondente.
IgnoreReadOnlyRecommendedQuando True, significa não exibir informações recomendadas somente leitura.
Origem Ao abrir um arquivo de texto, use este parâmetro para indicar de qual sistema operacional o arquivo se originou, para manipular corretamente páginas de código e retornos de carro/alimentações de linha. Os valores possíveis são as constantes xlMacintosh, xlWindows, xlMSDOS.
DelimitadorAo abrir um arquivo de texto, se o parâmetro Formato estiver definido como 6, use este parâmetro para especificar o caractere como separador. Se vários caracteres forem definidos, apenas o primeiro caractere será usado por padrão.
EditávelSe o arquivo a ser aberto for um suplemento do Excel 4.0, então quando o valor deste parâmetro for True, o add-in será uma janela visível; se for False ou este parâmetro for ignorado, o add-in será aberto de forma oculta; modo e não pode ficar visível Este parâmetro não pode ser usado nas versões 5.0 e superiores;
Notificar Quando o arquivo a ser aberto não puder ser aberto no modo leitura-gravação, se o valor deste parâmetro for True, o arquivo poderá ser adicionado à lista de notificação de arquivos. O Excel abrirá o arquivo no modo somente leitura e pesquisará a lista de notificação de arquivos, notificando o usuário quando o arquivo estiver disponível.Se o valor deste parâmetro for False ou omitido, nenhuma notificação será solicitada e nenhum arquivo indisponível poderá ser aberto.
Conversor O número de índice do conversor de arquivo que tentei usar pela primeira vez ao abrir o arquivo. Se o arquivo não for reconhecido pelo conversor de arquivo especificado, tente usar outro conversor.
Adicionar ao Mru Se o valor deste parâmetro for True, o trabalho não será adicionado à lista de arquivos usados ​​recentemente. O padrão é falso
LocalSe o valor deste parâmetro for True, o arquivo será salvo no idioma do Excel (incluindo as configurações do painel de controle). O padrão é False, o arquivo será salvo no idioma do VBA.
Carga Corrompida Os valores disponíveis são as constantes xlNormalLoad, xlRepairFile e xlExtractData, que significam respectivamente abrir a pasta de trabalho normalmente, tentar reparar a pasta de trabalho e tentar restaurar os dados na pasta de trabalho. O padrão é xlNormalLoad
Exemplo 1: Abra uma pasta de trabalho do Excel
Sub OpenExcelFile()
    
    Dim strFileName As String
    ' 定义文件名称
    strFileName = "D:VBAEmployee.xlsx"
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFileName
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Exemplo 2: Abra a pasta de trabalho do Excel no caminho atual
Sub OpenExcelFile()

    Dim strFileName As String
    Dim strFilePath
    
    ' 定义文件名称
    strFileName = "Employee.xlsx"
    ' 获取当前路径
    strFilePath = ThisWorkbook.Path
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFilePath & "" & strFileName
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

2. Salve e feche o arquivo

Ao abrir uma pasta de trabalho do Excel e operar seu conteúdo e, em seguida, desejar salvá-la e fechá-la, você pode usar os métodos Salvar e Fechar.

Exemplo: Após abrir o arquivo Employee.xlsx no caminho atual, após escrever a data atual na célula A1 da Planilha1, salve e feche o arquivo Employee.xlsx O código completo é o seguinte:
Sub WriteCurrentDate()
    
    ' 申明变量
    Dim strFileName As String
    Dim strFilePath
    Dim ws As Worksheet
    Dim wb As Workbook
    
    ' 定义文件名称
    strFileName = "Employee.xlsx"
    ' 获取当前路径
    strFilePath = ThisWorkbook.Path
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFilePath & "" & strFileName
    
    ' 定义sheet1工作表对象以及当前打开的工作簿对象
    Set ws = ActiveWorkbook.Worksheets("Sheet1")
    Set wb = ActiveWorkbook
    
    ' A1单元格写入当前日期
    ws.Range("A1").Value = Date
    
    ' 保存并关闭文件
    wb.Save
    wb.Close
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28