Como criar e ler arquivos do Excel em VB.NET

VB .NET Ler & Criar Arquivos Excel (Exemplo de Tutorial de Código)

This article was translated from English: Does it need improvement?
Translated
View the article in English

Os desenvolvedores precisam de uma abordagem suave e simples para acessar arquivos Excel em VB .NET. Neste passo a passo, usaremos a IronXL para ler arquivos Excel VB .NET e acessar todos os dados para uso em nosso projeto. Aprenderemos sobre a criação de planilhas em todos os formatos (.xls, .xlsx, .csv e .tsv), assim como definir estilos de célula e inserir dados usando programação Excel VB.NET.


Passo 1

1. Biblioteca Excel para VB.NET

Obtenha a Biblioteca IronXL Excel para VB.NET usando Download DLL ou NuGet. IronXL é nosso Passo 1 para acessar rapidamente os dados Excel em nossos projetos VB.NET, e o que usaremos para este tutorial (gratuito para desenvolvimento).

Install-Package IronXL.Excel

Como Fazer Tutorial

2. Criar Arquivos Excel em VB.NET

O IronXL fornece a abordagem mais simples para criar um arquivo Excel (formato .xlsx) em um projeto VB.NET. Após isso, podemos inserir dados e também definir propriedades de células como estilos de fonte ou bordas.

2.1. Criar Arquivo Excel

Vamos primeiro criar um WorkBook:

' Create a new Excel workbook with the default format (.xlsx)
Dim wb As New WorkBook
' Create a new Excel workbook with the default format (.xlsx)
Dim wb As New WorkBook
VB .NET

O código acima é para criar um novo arquivo Excel. Por padrão, sua extensão é .xlsx.

2.2. Criar Arquivo XLS

No caso de querer criar um arquivo de extensão .xls, você pode usar este código:

' Create a new Excel workbook with .xls format
Dim wb As New WorkBook(ExcelFileFormat.XLS)
' Create a new Excel workbook with .xls format
Dim wb As New WorkBook(ExcelFileFormat.XLS)
VB .NET

2.3. Criar Planilha

Depois de criar o WorkBook, uma Planilha Excel pode ser criada da seguinte forma:

' Create a new worksheet named "Sheet1" in the workbook
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
' Create a new worksheet named "Sheet1" in the workbook
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
VB .NET

O código acima criará uma nova WorkSheet ws1 com o nome Sheet1 em WorkBook wb.

2.4. Criar Várias Planilhas

Qualquer número de Planilhas pode ser criado da mesma forma:

' Create additional worksheets
Dim ws2 As WorkSheet = wb.CreateWorkSheet("Sheet2")
Dim ws3 As WorkSheet = wb.CreateWorkSheet("Sheet3")
' Create additional worksheets
Dim ws2 As WorkSheet = wb.CreateWorkSheet("Sheet2")
Dim ws3 As WorkSheet = wb.CreateWorkSheet("Sheet3")
VB .NET

3. Inserir Dados na Planilha

3.1. Inserir Dados nas Células

Agora podemos facilmente inserir dados nas células da Planilha da seguinte maneira:

' Insert a value into a specific cell
worksheet("CellAddress").Value = "MyValue"
' Insert a value into a specific cell
worksheet("CellAddress").Value = "MyValue"
VB .NET

Por exemplo, os dados na planilha ws1 podem ser inseridos como:

' Insert "Hello World" into cell A1 of the worksheet
ws1("A1").Value = "Hello World"
' Insert "Hello World" into cell A1 of the worksheet
ws1("A1").Value = "Hello World"
VB .NET

O código acima escreverá Hello World na célula A1 da WorkSheet ws1.

3.2. Inserir Dados em Intervalo

Também é possível escrever dados em várias células usando a função de intervalo da seguinte maneira:

' Insert "NewValue" into the range from cell A3 to A8
ws1("A3:A8").Value = "NewValue"
' Insert "NewValue" into the range from cell A3 to A8
ws1("A3:A8").Value = "NewValue"
VB .NET

3.3. Criar e Editar Exemplos de Planilhas

Criaremos um novo arquivo Excel Sample.xlsx e inseriremos alguns dados nele para mostrar o código que aprendemos acima.

' Import IronXL namespace for Excel operations
Imports IronXL

' Main subroutine to create and edit Excel
Sub Main()
    ' Create a new workbook in XLSX format
    Dim wb As New WorkBook(ExcelFileFormat.XLSX)
    ' Create a worksheet named "Sheet1"
    Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
    ' Insert data into cells
    ws1("A1").Value = "Hello"
    ws1("A2").Value = "World"
    ' Insert a range of values
    ws1("B1:B8").Value = "RangeValue"
    ' Save the workbook as "Sample.xlsx"
    wb.SaveAs("Sample.xlsx")
End Sub
' Import IronXL namespace for Excel operations
Imports IronXL

' Main subroutine to create and edit Excel
Sub Main()
    ' Create a new workbook in XLSX format
    Dim wb As New WorkBook(ExcelFileFormat.XLSX)
    ' Create a worksheet named "Sheet1"
    Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
    ' Insert data into cells
    ws1("A1").Value = "Hello"
    ws1("A2").Value = "World"
    ' Insert a range of values
    ws1("B1:B8").Value = "RangeValue"
    ' Save the workbook as "Sample.xlsx"
    wb.SaveAs("Sample.xlsx")
End Sub
VB .NET

Nota: Por padrão, o novo arquivo Excel será criado na pasta bin\Debug do projeto. Se quisermos criar um novo arquivo em um caminho personalizado, use:

wb.SaveAs(@"E:\IronXL\Sample.xlsx")
wb.SaveAs(@"E:\IronXL\Sample.xlsx")
VB .NET

Aqui está a captura de tela de nosso novo arquivo Excel Sample.xlsx:

Doc5 1 related to 3.3. Criar e Editar Exemplos de Planilhas

É claro como pode ser simples criar arquivos Excel usando IronXL em uma Aplicação VB.NET.


4. Ler Arquivo Excel em VB.NET

O IronXL também fornece uma abordagem simples para ler arquivos Excel (.xlsx) em seu projeto VB .NET. Para este propósito, basta obter o documento Excel, carregá-lo em seu projeto, ler seus dados e usá-los conforme suas necessidades.

Siga estes passos:

4.1. Acessar Arquivo Excel no Projeto

WorkBook é a classe do IronXL cujo objeto fornece acesso completo ao arquivo Excel e suas funções. Por exemplo, se quisermos acessar o arquivo Excel, simplesmente usamos:

' Load the Excel file "sample.xlsx" into a workbook
Dim wb As WorkBook = WorkBook.Load("sample.xlsx") 'Excel file path
' Load the Excel file "sample.xlsx" into a workbook
Dim wb As WorkBook = WorkBook.Load("sample.xlsx") 'Excel file path
VB .NET

No código acima, a função WorkBook.Load() carrega sample.xlsx em wb. Qualquer tipo de função pode ser executada em wb acessando WorkSheets específicas do arquivo Excel.

4.2. Acessar Planilha Específica

Para acessar uma folha específica no Excel, tome a classe WorkSheet, que pode ser usada das seguintes formas diferentes:

Por Nome da Planilha

' Access worksheet by name
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1") 'by sheet name
' Access worksheet by name
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1") 'by sheet name
VB .NET

Por Índice da Planilha

' Access worksheet by index
Dim ws As WorkSheet = wb.WorkSheets(0) 'by sheet index
' Access worksheet by index
Dim ws As WorkSheet = wb.WorkSheets(0) 'by sheet index
VB .NET

Planilha Padrão

' Access the default worksheet
Dim ws As WorkSheet = wb.DefaultWorkSheet() 'for the default sheet
' Access the default worksheet
Dim ws As WorkSheet = wb.DefaultWorkSheet() 'for the default sheet
VB .NET

Primeira Planilha

' Access the first worksheet in the workbook
Dim sheet As WorkSheet = wb.WorkSheets.FirstOrDefault() 'for the first sheet
' Access the first worksheet in the workbook
Dim sheet As WorkSheet = wb.WorkSheets.FirstOrDefault() 'for the first sheet
VB .NET

Depois de obter a folha do Excel ws, você pode obter qualquer tipo de dado da WorkSheet correspondente do arquivo Excel e realizar todas as funções do Excel.


5. Acessar Dados da Planilha

Os dados podem ser acessados a partir do ExcelSheet ws desta forma:

' Retrieve values from specific cells
Dim int_Value As Integer = ws("A2").IntValue 'for integer
Dim str_value As String = ws("A2").ToString() 'for string
' Retrieve values from specific cells
Dim int_Value As Integer = ws("A2").IntValue 'for integer
Dim str_value As String = ws("A2").ToString() 'for string
VB .NET

5.1. Dados de Coluna Específica

Também é possível obter dados de muitas células de uma coluna específica da seguinte maneira:

' Loop through cells in a specific range and print their values
For Each cell In ws("A2:A10")
    Console.WriteLine("value is: {0}", cell.Text)
Next cell
' Loop through cells in a specific range and print their values
For Each cell In ws("A2:A10")
    Console.WriteLine("value is: {0}", cell.Text)
Next cell
VB .NET

Ele exibirá valores das células A2 a A10. Um exemplo de código da discussão acima é fornecido abaixo.

' Example: Load and display values from a column
Imports IronXL

Sub Main()
    ' Load the workbook from file
    Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
    ' Get the first worksheet
    Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()
    ' Loop through cells in range A2:A10
    For Each cell In ws("A2:A10")
        Console.WriteLine("value is: {0}", cell.Text)
    Next
    Console.ReadKey()
End Sub
' Example: Load and display values from a column
Imports IronXL

Sub Main()
    ' Load the workbook from file
    Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
    ' Get the first worksheet
    Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()
    ' Loop through cells in range A2:A10
    For Each cell In ws("A2:A10")
        Console.WriteLine("value is: {0}", cell.Text)
    Next
    Console.ReadKey()
End Sub
VB .NET

Isto exibirá o seguinte resultado:

Doc3 Input1 related to 5.1. Dados de Coluna Específica

E podemos ver uma captura de tela do arquivo Excel Sample.xlsx:

Doc3 1 related to 5.1. Dados de Coluna Específica

6. Executar Funções em Dados

É simples acessar dados filtrados de uma Planilha Excel aplicando funções agregadas como Soma, Mínimo ou Máximo da seguinte maneira:

' Aggregate functions on a range of data
Dim sum As Decimal = ws("From:To").Sum()
Dim min As Decimal = ws("From:To").Min()
Dim max As Decimal = ws("From:To").Max()
' Aggregate functions on a range of data
Dim sum As Decimal = ws("From:To").Sum()
Dim min As Decimal = ws("From:To").Min()
Dim max As Decimal = ws("From:To").Max()
VB .NET

Você pode ler mais sobre Funções Agregadas Excel aqui.

' Example: Apply functions to data
Imports IronXL

Sub Main()
    ' Load the workbook
    Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
    ' Get the first worksheet
    Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()

    ' Perform aggregate calculations
    Dim sum As Decimal = ws("G2:G10").Sum()
    Dim min As Decimal = ws("G2:G10").Min()
    Dim max As Decimal = ws("G2:G10").Max()

    ' Print the results
    Console.WriteLine("Sum is: {0}", sum)
    Console.WriteLine("Min is: {0}", min)
    Console.WriteLine("Max is: {0}", max)
    Console.ReadKey()
End Sub
' Example: Apply functions to data
Imports IronXL

Sub Main()
    ' Load the workbook
    Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
    ' Get the first worksheet
    Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()

    ' Perform aggregate calculations
    Dim sum As Decimal = ws("G2:G10").Sum()
    Dim min As Decimal = ws("G2:G10").Min()
    Dim max As Decimal = ws("G2:G10").Max()

    ' Print the results
    Console.WriteLine("Sum is: {0}", sum)
    Console.WriteLine("Min is: {0}", min)
    Console.WriteLine("Max is: {0}", max)
    Console.ReadKey()
End Sub
VB .NET

Este código nos dará esta exibição:

Doc3 Output2 related to 6. Executar Funções em Dados

E este arquivo Excel Sample.xlsx:

Doc3 2 related to 6. Executar Funções em Dados

Você pode aprender mais sobre como ler Excel no artigo vinculado.


Tutorial de Acesso Rápido

Referência de API da Documentação

Acesse a referência de API da documentação do IronXL e as maneiras simples de trabalhar com Excel em seu projeto VB.NET. Encontre listas de recursos, funções, classes e mais.

Referência de API da Documentação
Documentation related to Tutorial de Acesso Rápido

Perguntas frequentes

Como posso ler arquivos do Excel em VB.NET sem usar o Interop?

Para ler arquivos Excel em VB.NET sem usar Interop, você pode usar o método WorkBook.Load do IronXL para carregar o arquivo. Uma vez carregado, você pode acessar os dados de planilhas específicas usando a classe WorkSheet.

Quais são os passos para criar um arquivo Excel em VB.NET?

Em VB.NET, para criar um arquivo Excel usando o IronXL, comece instanciando um novo objeto WorkBook. Use o método CreateWorkSheet para adicionar planilhas e preenchê-las com dados, definindo os valores das células.

É possível trabalhar com diferentes formatos de arquivo do Excel em VB.NET?

Sim, ao trabalhar com o IronXL em VB.NET, você pode criar e manipular arquivos do Excel em formatos como .xls, .xlsx, .csv e .tsv.

Como posso realizar cálculos com dados do Excel em VB.NET?

O IronXL permite realizar cálculos como Soma, Mínimo e Máximo diretamente em intervalos de células. Por exemplo, use ws('A1:A10').Sum() para calcular a soma dos valores nesse intervalo.

Posso inserir dados em células específicas de uma planilha do Excel usando VB.NET?

Sim, usando IronXL em VB.NET, você pode inserir dados em células específicas definindo a propriedade Value de uma célula, como ws1('A1').Value = 'Hello World' .

Como faço para salvar uma planilha do Excel em um caminho específico usando VB.NET?

Para salvar uma planilha do Excel em um caminho específico usando o IronXL, use o método SaveAs com o caminho de arquivo desejado, por exemplo, wb.SaveAs('E:\IronXL\Sample.xlsx') .

Como posso baixar a biblioteca do Excel para desenvolvimento em VB.NET?

Você pode baixar a biblioteca IronXL Excel para VB.NET executando o comando dotnet add package IronXL.Excel via NuGet ou baixando o arquivo DLL do site da IronXL.

Posso criar várias planilhas em um único arquivo do Excel usando VB.NET?

Sim, usando o IronXL em VB.NET, você pode criar várias planilhas em um único arquivo do Excel invocando o método CreateWorkSheet várias vezes em um objeto WorkBook.

Como posso acessar uma planilha específica pelo nome ou índice em um arquivo do Excel usando VB.NET?

Com o IronXL em VB.NET, você pode acessar uma planilha pelo nome usando wb.GetWorkSheet('SheetName') ou pelo índice com wb.WorkSheets(index) .

Onde os arquivos do Excel são salvos por padrão quando criados usando o IronXL em VB.NET?

Por padrão, os arquivos do Excel criados com o IronXL em VB.NET são salvos na pasta 'bin\Debug' do projeto, a menos que um caminho diferente seja especificado usando o método SaveAs .

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Nuget Downloads 2,134,203 | Versão: 2026.7 recém-lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronXL.Excel
executar um exemplo Veja seus dados se transformarem em uma planilha.