Salvar como VBA do Excel como

Se você é um usuário frequente do Microsoft Excel, deve ter usado a função Salvar como, que permite salvar a pasta de trabalho aberta no momento com um nome ou formato diferente (ativado para macro do Excel, CSV, PDF, etc.). Você também pode salvar o arquivo em uma pasta diferente usando este método. No entanto, é possível usar a mesma função no VBA? A resposta é um absoluto sim! Também estamos tendo a função Salvar como no VBA, o que nos ajuda a executar todas essas tarefas acima mencionadas, além de alguns benefícios adicionais (obviamente, automatizar as coisas é um dos benefícios). Neste artigo, veremos exemplos diferentes para a função VBA SAVE AS.

Fórmula para a função Salvar como no Excel VBA

Vejamos abaixo a fórmula da função Salvar como no VBA.

Onde,

  • FileName - nome da pasta de trabalho a ser salva.
  • FileFormat - formato de arquivo no qual o arquivo precisa ser salvo (por exemplo, PDF, CSV etc.)
  • Senha - Senha para proteger a pasta de trabalho (a pasta de trabalho não pode ser acessível sem uma senha)
  • WriteResPassword - Escreva a senha de reserva para a pasta de trabalho.
  • ReadOnlyRecommended - reconhece se a pasta de trabalho é salva no formato Somente Leitura ou não.
  • CreateBackup - determina se um arquivo de backup para a pasta de trabalho é criado ou não.
  • AccessMode - reconhece o modo de acesso para a pasta de trabalho.
  • Resolução de conflitos - reconhece os conflitos que aparecem quando a pasta de trabalho é compartilhada e usada por mais de um usuário.
  • AddToMru - Verifica se a pasta de trabalho foi adicionada no arquivo usado recentemente ou não.
  • Local - verifica se a pasta de trabalho é salva com as leis do Excel (idioma local) ou com as leis do VBA (EUA - inglês).

Silêncio! Muitos argumentos, certo? Mas e se eu lhe disser, todos esses argumentos são opcionais e podem ser ignorados ao usar a função VBA SAVE AS. No entanto, é verdade que esses são os argumentos que tornam o VBA SaveAs mais flexível para usar. "Expressão" no início da sintaxe nada mais é do que uma expressão contra a qual essa função pode ser usada. Like Workbook é a expressão com a qual SaveAs pode ser usado.

Exemplos para salvar arquivo do Excel usando a função Salvar como VBA

Abaixo estão os diferentes exemplos para salvar o arquivo Excel usando a função Salvar como VBA.

Você pode fazer o download deste modelo do VBA Save As Excel aqui - Modelo do VBA Save As Excel

Exemplo # 1 - Como salvar uma cópia da pasta de trabalho com um nome diferente?

Vamos ver como podemos salvar a pasta de trabalho atual com um nome diferente.

Siga as etapas abaixo para usar a função Salvar como no Excel VBA:

Etapa 1: adicione um novo módulo no Editor do Visual Basic (VBE). Vá para Inserir e selecione Módulo.

Etapa 2: defina um novo subprocedimento que pode armazenar uma macro.

Código:

 Sub SaveAs_Ex1 () End Sub 

Etapa 3: defina uma nova variável que possa conter o nome pelo qual o arquivo será salvo.

Código:

 Sub SaveAs_Ex1 () Dim newName As String End Sub 

Etapa 4: Agora use o operador de atribuição para atribuir um nome a essa variável usando o arquivo atual como o qual pode ser salvo.

Código:

 Sub SaveAs_Ex1 () Dim newName As String newName = "Example1" End Sub 

Etapa 5: Agora, use a função SaveAs com o argumento FileName para salvar o arquivo como com o nome "Example1".

Código:

 Sub SaveAs_Ex1 () Dim newName As String newName = "Example1" ActiveWorkbook.SaveAs Nome do arquivo: = newName End Sub 

Etapa 6: é isso, agora execute esse código pressionando F5 ou manualmente usando o botão Executar e veja a saída.

Você pode ver que um arquivo com o nome “ Exemplo1 ” está sendo salvo em Documentos .

Se você pudesse ter anotado, o arquivo está sendo salvo como Arquivo Habilitado para Macro, porque o arquivo original no qual usei a função SaveAs é um arquivo com Habilitado para Macro. Isso significa que essa função no VBA verifica automaticamente o formato do arquivo anterior e o salva no mesmo formato. Além disso, por padrão, o arquivo será salvo em Documentos em Este PC . Esse local padrão pode ser fornecido explicitamente no momento da definição do nome da planilha.

Exemplo # 2 - Salvando a pasta de trabalho com nome fornecido pelo usuário

Em vez de definir o nome inicialmente, é possível escrever um código que permita ao usuário salvar a planilha com o nome de sua escolha, igual à função Salvar como do Excel?

Siga as etapas abaixo para usar a função Salvar como no Excel VBA.

Etapa 1: defina um novo subprocedimento no módulo recém-inserido que pode armazenar a macro.

Código:

 Sub SaveAs_Ex2 () End Sub 

Etapa 2: defina uma nova variável que possa conter o valor do nome definido pelo usuário.

Código:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name Como variante End Sub 

A razão para essa variável ser definida como Variante é que esse tipo de dados torna as convenções de nomenclatura versáteis. Por exemplo, um usuário pode adicionar algum caractere especial extra (que é permitido nas convenções de nomenclatura) ou também pode adicionar datas sob o nome do arquivo.

Etapa 3: Agora, com a ajuda de um operador de atribuição e uma combinação de funções chamada application.GetSaveAsFilename, faça uma declaração que permita que o sistema adote um nome definido pelo usuário. Veja como isso foi alcançado na captura de tela abaixo.

Código:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name As Variant Spreadsheet_Name = Application.GetSaveAsFilename End Sub 

Etapa 4: use IF condicional para garantir que o nome digitado pelo usuário seja válido conforme as convenções de nomenclatura.

Código:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name As Variant Spreadsheet_Name = Application.GetSaveAsFilename Se Spreadsheet_Name False, em seguida, End Sub 

Essa condição verifica se o nome dado pelo usuário para salvar a planilha está satisfazendo adequadamente as convenções de nomenclatura definidas para nomear um arquivo ou não.

Etapa 5: Anote uma declaração que seja avaliada para a condição IF especificada.

Código:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name As Variant Spreadsheet_Name = Application.GetSaveAsFilename If Spreadsheet_Name False Then ActiveWorkbook.SaveAs Nome do arquivo: = Spreadsheet_Name End Sub 

Esse trecho de código é avaliado quando a condição SE for verdadeira. Nesse caso, a pasta de trabalho ativa será salva com o nome define na variável Spreadsheet_Name (que será definida pelo usuário)

Etapa 6: finalize o loop IF e execute esse código para ver a saída.

Código:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name As Variant Spreadsheet_Name = Application.GetSaveAsFilename If Spreadsheet_Name False Then ActiveWorkbook.SaveAs Nome do arquivo: = Spreadsheet_Name End If End Sub 

Etapa 7: assim que você executar esse código, você receberá a caixa de diálogo Salvar como, que permitirá que você digite o nome de sua escolha e salve o arquivo.

Exemplo # 3 - Como salvar como um arquivo em PDF usando a função SaveAs do Excel VBA?

Suponha que você tenha os dados fornecidos abaixo na planilha do Excel e precise convertê-los em PDF.

Siga as etapas abaixo para converter esse arquivo em um PDF usando a função Salvar como VBA:

Etapa 1: defina um novo subprocedimento para armazenar uma macro.

Código:

 Sub SalvarAs_PDF_Ex3 () End Sub 

Etapa 2: Agora, use o código a seguir para salvar este arquivo como um arquivo PDF.

Código:

 Sub SaveAs_PDF_Ex3 () ActiveSheet.SaveAs Nome do arquivo: = "Vba Save as.pdf" End Sub 

Etapa 3: execute esse código e você verá um arquivo pdf gerado em Este PC> Documentos.

Nesse código, o ActiveSheet.SaveAs permite que o arquivo seja salvo com o mesmo nome. Como adicionamos a extensão como .pdf no final do arquivo, ela é exportada para o arquivo PDF. Você pode ver a imagem acima para sua referência.

Coisas para lembrar

  • O local padrão para salvar o arquivo usado em VBA SaveAs será Este PC> Documentos. No entanto, você pode especificar o diretório manualmente no momento da definição do nome do arquivo.
  • Por padrão, o arquivo salvo usando o VBA SaveAs será salvo no formato igual ao do arquivo original. No entanto, também pode ser definido conforme os requisitos do usuário no momento em que você define a variável.

Artigos recomendados

Este é um guia para o VBA Save As. Aqui, discutiremos como salvar o arquivo usando a função Salvar como do Excel VBA, juntamente com um exemplo e um modelo do Excel para download. Abaixo estão alguns artigos úteis do Excel relacionados ao VBA -

  1. Sub Saída de VBA
  2. Criar uma planilha no Excel
  3. Objeto VBA
  4. Salvamento automático do Excel

Categoria: