Vamos pegar os dados de uma tabela do BD que aparecem no Msflexgrid ou MsHflexgrid e salvar em arquivos como Word, Excel, HTML, Txt, PowerPoint etc
No Form coloque um TextBox, um MsHflexgrid ou Msflexgrid e um Botão
No general Declarations do Form declare:
Dim cnn As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim rs As New ADODB.Recordset
No evento Form_Load vamos abrir a conexão com o BD, carregar o recordset e preencher o MshflexGrid com os dados do "rs"
Private Sub Form_Load()
'abrindo a conexão com o Banco BD que esta na mesma pasta do projeto
cnn.ConnectionString = "provider = microsoft.jet.oledb.4.0;" & _
"data Source = " & App.Path & "\BD.mdb;"
cnn.CursorLocation = adUseClient
cnn.Open
'carregando o recordset com campos desejados da tabela
With cmd
.ActiveConnection = cnn
.CommandType = adCmdText
.CommandText = "select campo1, campo2, campo3 from tabela"
Set rs = .Execute
End With
'carregando o Mshflex com o recordset
With rs
Set MSHFlexGrid1.DataSource = rs
End With
End Sub
agora vamos criar a Sub que vai gerar o arquivo desejado no caminho que iremos informar no textbox
Private Sub gerar_arquivo(ByVal strFilename As String, ByRef msFlex As MSHFlexGrid)
Const SEPARATOR_CHAR As String = " "
Dim intFreeFile As Integer
Dim strLine As String
Dim r As Integer
Dim c As Integer
intFreeFile = FreeFile
Open strFilename For Output As #intFreeFile
With msFlex
' cada linha
For r = 0 To .Rows - 1
strLine = ""
' cada coluna
For c = 0 To .Cols - 1
strLine = strLine & IIf(c = 0, "", SEPARATOR_CHAR) & .TextMatrix(r, c)
Next c
Print #intFreeFile, strLine
Next r
End With
Close #intFreeFile
End Sub
Agora vamos ao botão que chamará a sub para gerar nosso arquivo
Private Sub Command1_Click()
Call gerar_arquivo(Text1.Text, MSHFlexGrid1)
MsgBox "Arquivo " & Text1.Text & " Salvo com sucesso !", vbInformation
End Sub
Agora você deve estar perguntando, e para gerar no Word, Excel, HTML ?, o esquema está no TextBox, é nele que você vai digitar o caminho da pasta onde quer criar seu arquivo, vai colocar o nome do arquivo e o tipo de arquivo, assim:
Pergunta
Macêdo
Vamos pegar os dados de uma tabela do BD que aparecem no Msflexgrid ou MsHflexgrid e salvar em arquivos como Word, Excel, HTML, Txt, PowerPoint etc
No Form coloque um TextBox, um MsHflexgrid ou Msflexgrid e um Botão
No general Declarations do Form declare:
No evento Form_Load vamos abrir a conexão com o BD, carregar o recordset e preencher o MshflexGrid com os dados do "rs" agora vamos criar a Sub que vai gerar o arquivo desejado no caminho que iremos informar no textbox Agora vamos ao botão que chamará a sub para gerar nosso arquivoAgora você deve estar perguntando, e para gerar no Word, Excel, HTML ?, o esquema está no TextBox, é nele que você vai digitar o caminho da pasta onde quer criar seu arquivo, vai colocar o nome do arquivo e o tipo de arquivo, assim:
Quer gerar um arquivo do Word? digite na text:
C:\Arquivos de programas\MeuArquivo.Doc
Quer gerar um arquivo Txt? digite na text:
C:\Arquivos de programas\MeuArquivo.Txt
Quer criar uma planilha no Excel? digite na text:
C:\Arquivos de programas\MeuArquivo.xls
HTML?
C:\Arquivos de programas\MeuArquivo.html
Taí pode ser util...
Macêdo
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.