Os formatos de arquivo de planilha mais comuns e amplamente usados são XLS, XLSX e ODS. Os famosos Microsoft Excel e OpenOffice Calc suportam esses formatos e normalmente utilizamos esses formatos para manutenção de contas e diferentes planilhas. Portanto, como desenvolvedor, precisamos editar arquivos do Excel em nossos aplicativos programaticamente. Neste artigo, discutiremos como editar arquivos do Excel em C# usando a API .NET.
A seguir estão os tópicos discutidos brevemente neste artigo:
.NET API para edição e automação de planilhas do Excel
O GroupDocs apresenta a API .NET para edição de planilhas. Vou usá-lo nos exemplos C# deste artigo. É a API de edição de documentos e permite que os desenvolvedores carreguem, editem e salvem vários formatos de documentos usando editores HTML WYSIWYG. Além dos formatos de planilha XLS, XLSX e ODS, a API suporta a edição de vários outros formatos compatíveis com planilhas e MS Excel como CSV, TSV, DSV, XLT, XLTX, XLTM, XLSM, XLSB, XLAM, SXC, SpreadsheetML, FODS, DIF.
Baixe o instalador de DLLs ou MSI na seção de downloads ou instale a API em seu aplicativo .NET via NuGet.
PM> Install-Package GroupDocs.Editor
Editar arquivos do Excel em C#
Espero que você tenha referenciado com sucesso a API. Agora você pode começar a editar rapidamente seus documentos do Excel. As etapas a seguir permitirão que você edite os documentos da planilha usando C#.
- Carregar o arquivo Excel.
- Edite de acordo com as opções.
- Salve o documento editado.
Carregar a planilha do Excel
Em primeiro lugar, carregue a planilha fornecendo o caminho/fluxo do documento e a senha (se o documento estiver protegido por senha).
// Carregar o arquivo do Excel usando C#
Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.Password = "password"; // if any
// Carregar a planilha
Editor editor = new Editor("path/spreadsheet.xlsx", delegate { return loadOptions; });
Edite o arquivo Excel
Após o carregamento, você pode editar a planilha carregada conforme necessário. Agora vamos substituir todas as ocorrências de “Nome antigo da empresa” por “Novo nome da empresa” na primeira aba da planilha. As etapas a seguir permitem que você edite o arquivo do Excel adequadamente em C#.
- Carregue o arquivo Excel usando Editor e opções de carregamento.
- Prepare as Opções de edição da planilha para extrair a planilha/guia exata.
- Extraia o conteúdo da aba.
- Modifique o conteúdo da guia.
- Você pode extrair as imagens e todos os recursos da guia selecionada.
- Crie o novo EditableDocument usando o conteúdo modificado.
- Salve a planilha de edição usando o método apropriado Save().
O código-fonte C# a seguir edita o arquivo do Excel e altera seu conteúdo.
// Edite a planilha do Excel usando C#
Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
// loadOptions.Password = "senha";
// Carregar a planilha
Editor editor = new Editor("path/spreadsheet.xlsx", delegate { return loadOptions; });
// Obtenha a 1ª guia da Planilha
SpreadsheetEditOptions sheetTab1EditOptions = new SpreadsheetEditOptions();
sheetTab1EditOptions.WorksheetIndex = 0; // first worksheet
// Obter marcação HTML de alguma instância EditableDocument
EditableDocument firstTab = editor.Edit(sheetTab1EditOptions);
string bodyContent = firstTab.GetBodyContent(); // HTML markup from inside the HTML -> BODY element
string allContent = firstTab.GetContent(); // Full HTML markup of all document, with HTML -> HEAD header and all its content
List<IImageResource> onlyImages = firstTab.Images;
List<IHtmlResource> allResourcesTogether = firstTab.AllResources;
string editedContent = allContent.Replace("Company Name", "New Company Name");
EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResourcesTogether);
Salve o arquivo editado do Excel com opções
Após a edição, enquanto salva o conteúdo da planilha editada, você pode definir várias opções. Essas opções incluem; configuração de senha, formato de saída, proteção, etc. Estou configurando as opções acima no código abaixo mencionado e salvando a planilha editada como um arquivo XLSX protegido por senha e protegido contra gravação.
// Salve o arquivo do Excel com o conteúdo atualizado usando C#
// Criar opções de salvamento
SpreadsheetFormats xlsxFormat = SpreadsheetFormats.Xlsx;
Options.SpreadsheetSaveOptions saveOptions = new SpreadsheetSaveOptions(SpreadsheetFormats.Xlsx);
// Definir nova senha de abertura
saveOptions.Password = "newPassword";
saveOptions.WorksheetProtection = new WorksheetProtection(WorksheetProtectionType.All, "WriteProtectionPassword");
// Criar fluxo de saída
using (FileStream outputStream = File.Create("path/editedSpreadsheet.xlsx"))
{
editor.Save(afterEdit, outputStream, saveOptions);
}
Obtenha uma licença gratuita
Você pode obter uma licença temporária gratuita para usar a API sem as limitações de avaliação.
Conclusão
Para concluir, discutimos como editar documentos do Excel em C# usando a API de edição de documentos para aplicativos .NET. Você pode usar a API com os editores WYSIWYG para a edição visual de seus documentos. Depois disso, você pode seguir em frente para criar seu próprio editor de planilhas online.
Para mais detalhes, opções e exemplos, você pode visitar o repositório documentation e o GitHub . Para mais dúvidas, entre em contato com o suporte no fórum.