Visual Basic 6 - Exportando o conteúdo de Grid para um arquivo texto


Vamos mostrar como exportar o conteúdo de um Grid - no nosso caso iremos usar o MSFlexGrid - para um arquivo no formato texto delimitado.

Criando o projeto 

 

Salve o projeto com o nome de exporta_grid.vbp

Insira o código abaixo na secção General Declarations do formulário:

Option Explicit

Insira o código abaixo no evento Load formulário:

Private Sub Form_Load()
Dim sql As String
sql = "Select au_id,author from authors where Au_Id < 15 "
Data1.DatabaseName = "C:\Arquivos de programas\Microsoft Visual Studio\VB98\Biblio.mdb"
Data1.RecordSource = sql
Data1.Refresh
End Sub

Agora insira o seguinte código no evento click do botão Exporta:

Private Sub cmdExporta_Click()
Dim resposta As String
resposta = InputBox("Informe o nome do arquivo de destino", "Exportando o Grids para um arquivo texto", "c:\windows\desktop\teste.txt")
If resposta <> "" Then
   Call GridExport(MSFlexGrid1, resposta, ",", Chr$(34))
End If
End Sub

Abaixo o código da função que irá exportar o conteúdo do Grid:

Public Sub GridExport(GridAExportar As Object, Arquivo As String, Optional _
Delimitador As Variant, Optional , EncerraStrings As Variant)

On Error GoTo trata_erro

Dim iNumRows As Integer
Dim iNumCols As Integer
Dim iArqNumero As Integer

If IsMissing(Delimitador) Then
   Delimitador = vbTab
End If

If IsMissing(EncerraStrings) Then
   EncerraStrings = ""
End If

iArqNumero = FreeFile
Open Arquivo For Output As #iArqNumero

For iNumRows = 0 To GridAExportar.rows - 1
    GridAExportar.Row = iNumRows

    For iNumCols = 1 To GridAExportar.Cols - 1
        GridAExportar.col = iNumCols

        If iNumCols > 1 Then
            Print #iArqNumero, Delimitador;
         End If
         Print #iArqNumero, EncerraStrings, GridAExportar.Text & EncerraStrings;

    Next iNumCols

    Print #iArqNumero, ""

Next iNumRows

Close #iArqNumero
MsgBox GridAExportar.rows & " linhas exportadas com sucesso ", vbInformation

Exit Sub

A função irá receber os seguintes parâmetros :

  1. GridAExportar - o nome do objeto Grid cujo conteúdo desejamos exportar
  2. Arquivo - O nome do arquivo onde iremos gravar o conteúdo do Grid
  3. Delimitador - O delimitador que desejamos usar para separar os campos. Opcional - padrão = ( , )
  4. EncerraString - O caractere que usaremos para envolver a string. Opcional - padrão = ( " " )

Executando o projeto 

Ao executar o projeto teremos os resultados abaixo:

Tchau.. 

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ?

 

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

 

Referências:


José Carlos Macoratti