Compartilhar via


Salvar pastas de trabalho programaticamente

Há várias maneiras de salvar uma pasta de trabalho. Você pode salvar uma pasta de trabalho sem alterar o caminho. Se a pasta de trabalho não tiver sido salva antes, você deverá salvá-la especificando um caminho. Sem um caminho explícito, o Microsoft Office Excel salva o arquivo na pasta atual com o nome que recebeu quando foi criado. Você também pode salvar uma cópia da pasta de trabalho sem modificar a pasta de trabalho aberta na memória.

Aplica-se a: As informações neste tópico se aplicam a projetos de nível de documento e projetos de suplemento VSTO para Excel. Para obter mais informações, consulte Recursos disponíveis por aplicativo e tipo de projeto do Office.

Salvar uma pasta de trabalho sem alterar o caminho

Para salvar uma pasta de trabalho associada a uma personalização em nível de documento

  1. Chame ThisWorkbook o Save método da classe.

    this.Save();
    

Para salvar a pasta de trabalho ativa em um suplemento VSTO

  1. Chame o Save método para salvar a pasta de trabalho ativa. Para usar o exemplo de código a seguir, execute-o ThisAddIn na classe em um projeto de suplemento VSTO para Excel.

    this.Application.ActiveWorkbook.Save();
    

Salvar uma pasta de trabalho com um novo caminho

Você pode salvar a pasta de trabalho especificada em um novo local ou com um novo nome, opcionalmente especificando um formato de arquivo, uma senha, um modo de acesso e muito mais.

Observação

Talvez você queira definir a propriedade como False antes de salvar a DisplayAlerts pasta de trabalho com um novo caminho, pois salvar em alguns formatos requer interação. Definir essa propriedade como False faz com que o Excel use todos os padrões.

Para salvar uma pasta de trabalho associada a uma personalização em nível de documento

  1. Chame ThisWorkbook o SaveAs método da classe. Para usar o exemplo de código a seguir, execute-o ThisWorkbook na classe.

    this.SaveAs(@"C:\Book1.xml", missing,
        missing, missing, missing, missing, Excel.XlSaveAsAccessMode.xlNoChange,
        missing, missing, missing, missing, missing);
    

Para salvar a pasta de trabalho ativa em um suplemento VSTO

  1. Chame o SaveAs método para salvar a pasta de trabalho ativa em um novo caminho. Para usar o exemplo de código a seguir, execute-o ThisAddIn na classe em um projeto de suplemento VSTO para Excel.

    this.Application.ActiveWorkbook.SaveAs(@"C:\Test\Book1.xml", 
        Excel.XlSaveAsAccessMode.xlNoChange);
    

Salvar uma cópia da pasta de trabalho

Você pode salvar uma cópia da pasta de trabalho em um arquivo sem modificar a pasta de trabalho aberta na memória. Isso é útil quando você deseja criar uma cópia de backup sem modificar o local da pasta de trabalho.

Para salvar uma pasta de trabalho associada a uma personalização em nível de documento

  1. Chame ThisWorkbook o SaveCopyAs método da classe. Para usar o exemplo de código a seguir, execute-o ThisWorkbook na classe.

    this.SaveCopyAs(@"C:\Book1.xlsx");
    

Para salvar a pasta de trabalho ativa em um suplemento VSTO

  1. Chame o SaveCopyAs método para salvar uma cópia da pasta de trabalho ativa. Para usar o exemplo de código a seguir, execute-o ThisAddIn na classe em um projeto de suplemento VSTO para Excel.

    this.Application.ActiveWorkbook.SaveCopyAs(@"C\Book1.xlsx");
    

Para verificar se o salvamento foi bem-sucedido

Você pode usar algumas das DocumentProperties, como o Último Tempo de Salvamento, para verificar se o salvamento foi bem-sucedido.

Programação robusta

O cancelamento interativo de qualquer um dos métodos que salvam ou copiam a pasta de trabalho gera um erro em tempo de execução em seu código. Por exemplo, se o procedimento chamar o método, mas não desabilitar os prompts do Excel, e o usuário clicar em Cancelar quando solicitado, o SaveAs Excel gerará um erro em tempo de execução.