VBA Save File – 20 Exemplos fáceis
In this Article
- Salvando um Arquivo – VBA
- Codificação Fácil em VBA
- Salvar o Arquivo Onde o Código é Armazenado
- Salvar Todos os Arquivos Abertos
- Salvar Todos os Arquivos Abertos que não Estejam Abertos no Modo Somente Leitura
- Salvando um Arquivo Definido por uma Variável
- Salvar um Arquivo Definido por uma Variável Texto
- Salvar um Arquivo Definido Pela Ordem em que Foi Aberto.
- Salvar Arquivo com Base no Valor da Célula
- Salvar Como – VBA
- SaveAs Syntax:
- Exemplos de Sintaxe do Salvar Como:
- Workbook Save As – Mesmo Diretório
- Workbook Save As – Novo diretório
- Workbook Save As – Novo Diretório, Especificar a Extensão do Arquivo
- Workbook Save As – Novo diretório, Especificar a Extensão do Arquivo – método Alt
- Workbook Save As – Adicionar Senha ao Arquivo Aberto
- Workbook Save As – Adicionar Senha Para Permissão de Escrita
- Workbook Save As – Somente Leitura Recomendada
- Outros Exemplos de Salvar Como
Este tutorial em VBA examina como salvar um arquivo usando os comandos Salvar e Salvar Como em VBA.
Salvando um Arquivo – VBA
O comando Salvar em VBA salva um arquivo Excel, semelhante a clicar no ícone Salvar ou usando a tecla de atalho Salvar (CTRL+S).
Salvar um Arquivo Específico
Para salvar um arquivo específico, faça referência ao objeto Workbook e use o comando Save.
Workbooks("SalvarAquivo.xlsm").Save
Salvar o Arquivo Ativo
Nota: Este é o arquivo ativo atual (Active Workbook) do código VBA, que é diferente do ThisWorkbook, que é o arquivo que contém o código em execução.
ActiveWorkbook.Save
Codificação Fácil em VBA
Pare de procurar por código VBA online. Saiba mais sobre AutoMacro, um construtor de códigos VBA que permite aos iniciantes codificar procedimentos do zero com o mínimo de conhecimento de codificação e com muitos recursos que economizam tempo para todos os usuários!
Salvar o Arquivo Onde o Código é Armazenado
ThisWorkbook.save
Salvar Todos os Arquivos Abertos
Este código passará por todos os arquivos abertos e salvará cada um deles.
Dim wb as workbook
For Each wb In Application.Workbooks
wb.Save
Next wb
Salvar Todos os Arquivos Abertos que não Estejam Abertos no Modo Somente Leitura
Nota: A abertura de um arquivo no modo ReadOnly impedirá que ele seja salvo.
Para salvar o arquivo, você precisará usar Save As e salvar o arquivo com um nome diferente.
Dim wb as workbook
For Each wb In Application.Workbooks
If not wb.ReadOnly then
wb.Save
End if
Next wb
Salvando um Arquivo Definido por uma Variável
Isto salvará um arquivo que foi atribuído a uma variável de objeto Workbook.
Dim wb as workbook
set wb = workbooks("SalvarArquivo.xlsm")
wb.save
Salvar um Arquivo Definido por uma Variável Texto
Isto salvará um arquivo cujo nome é escrito em uma variável do tipo string.
Dim TextoNomeArquivo as string
TextoNomeArquivo = "SalvarArquivo.xlsm"
workbooks(TextoNomeArquivo).save
Salvar um Arquivo Definido Pela Ordem em que Foi Aberto.
Nota: O primeiro arquivo será 1, o segundo 2, e assim por diante.
workbooks(1).save
Salvar Arquivo com Base no Valor da Célula
Isto salvará um arquivo cujo nome é encontrado em um valor de célula.
Dim TextoNomeArquivo as string
TextoNomeArquivo = activeworkbook.sheets("Planilha1").range("A1").value
workbooks(TextoNomeArquivo).save
Salvar Como – VBA
O comando VBA Salvar Como salva um arquivo Excel como um novo arquivo, semelhante a clicar no ícone Salvar Como ou usando a tecla de atalho Salvar Como (Alt > F > A).
Acima, listamos todas as formas de especificar o arquivo a ser salvo. Você pode usar exatamente os mesmos métodos para especificar arquivos quando você usa o comando Salvar Como.
A função Salvar Como se comporta de forma semelhante a Salvar, exceto que você também deve especificar o nome do novo arquivo.
Na verdade, o comando Salvar Como tem muitas variáveis potenciais a especificar:
SaveAs Syntax:
workbook object .SaveAs(FileName, FileFormat, Password, WriteResPassword, _
ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, _
AddToMru,TextCodepage, TextVisualLayout, Local)
Uma descrição completa de todos os argumentos de SaveAs está incluída abaixo. Por enquanto, vamos nos concentrar nos exemplos mais comuns.
Nota: Estes argumentos podem ser inseridos como strings com parênteses ou como variáveis definidas.
Exemplos de Sintaxe do Salvar Como:
Workbook Save As – Mesmo Diretório
ActiveWorkbook.SaveAs Filename:= "novo"
ou
ActiveWorkbook.SaveAs "novo"
ou
Dim NomeArquivo as string
NomeArquivo = "novo"
ActiveWorkbook.SaveAs Filename:= NomeArquivo
Workbook Save As – Novo diretório
ActiveWorkbook.SaveAs Filename:= "C:\novo"
ou
Dim NomeArquivo as string
NomeArquivo = "C:\novo"
ActiveWorkbook.SaveAs Filename:= NomeArquivo
Workbook Save As – Novo Diretório, Especificar a Extensão do Arquivo
ActiveWorkbook.SaveAs Filename:= "C:\novo.xlsx"
ou
Dim NomeArquivo as string
NomeArquivo = "C:\novo.xlsx"
ActiveWorkbook.SaveAs Filename:= NomeArquivo
Workbook Save As – Novo diretório, Especificar a Extensão do Arquivo – método Alt
Você também pode especificar o formato do arquivo em seu próprio argumento.
.xlsx = 51 '(52 para Mac)
.xlsm = 52 '(53 para Mac)
.xlsb = 50 '(51 para Mac)
.xls = 56 '(57 para Mac)
ActiveWorkbook.SaveAs Filename:= "C:\novo", FileFormat:= 51
Workbook Save As – Adicionar Senha ao Arquivo Aberto
ActiveWorkbook.SaveAs Filename:= "C:\novo.xlsx", Password:= "senha"
Workbook Save As – Adicionar Senha Para Permissão de Escrita
Se a senha correta não for inserida, a pasta de trabalho será aberta somente para leitura
ActiveWorkbook.SaveAs Filename:= "C:\novo.xlsx", WriteRes:= "senha"
Workbook Save As – Somente Leitura Recomendada
VERDADEIRO para exibir uma caixa com uma mensagem recomendando que o arquivo seja aberto somente para leitura.
ActiveWorkbook.SaveAs Filename:= "C:\novo.xlsx", ReadOnlyRecommended:= TRUE
Outros Exemplos de Salvar Como
Criar uma Caixa de Diálogo Salvar Como
Isto gera a caixa de diálogo Salvar Como, que solicita ao usuário que salve o arquivo.
Note que este simples código pode não ser apropriado em todos os casos.
Application.GetSaveAsFilename
Criar uma Caixa de Diálogo Salvar Como com o Nome de Arquivo Padrão Fornecido
Application.GetSaveAsFilename InitialFilename:="teste.xlsx"
Criar e Salvar um Novo Arquivo
Isto criará um novo arquivo e o salvará imediatamente.
Dim wb As Workbook
Set wb = Workbooks.Add
Application.DisplayAlerts = False
wb.SaveAs Filename:=”c:\Teste1.xlsx”
Application.DisplayAlerts = True
Desabilitar Alertas de Salvamento
Ao trabalhar com salvamentos em VBA, você pode encontrar vários avisos ou avisos de salvamento. Para desativar as advertências, acrescente esta linha de código:
Application.DisplayAlerts=False
e para reativar as advertências:
Application.DisplayAlerts=True