Boa tarde a todos.
O código abaixo exporta os dados da tabela para o Excel. O problema é que no caso de uma tabela que possui alguns campos com origem em uma consulta, ele não faz a transferência do texto. Ela transfere apenas os códigos (ex: tblListaCidade.CodigoCidade, tblListaCidade.NomeCidade). Como devemos fazer para corrigir isso? Se não for possível, existe uma forma de eu adaptar a função do menu do Access "Vinculos do MS-Office - Analisar com Excel" em um botão do formulário, pois esta função transfere os dados de forma como eles deve ser visualizados e impressos.
Private Sub SeuBotão_Click()
'By JPaulo ® Maximo Access
Dim rst As DAO.Recordset, strSQL As String, strLivro As String, xls As Object
Set xls = CreateObject("Excel.Application")
strLivro = CurrentProject.Path & "\teste.xls"
xls.Workbooks.Open (strLivro)
xls.Visible = True
xls.Worksheets("Sheet1").Activate
strSQL = "SELECT * FROM teste;"
Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
xls.ActiveSheet.Range("A1").Select
xls.ActiveCell.CopyFromRecordset rst
xls.ActiveWorkbook.Save
xls.Application.Quit
Set xls = Nothing
End Sub
O código abaixo exporta os dados da tabela para o Excel. O problema é que no caso de uma tabela que possui alguns campos com origem em uma consulta, ele não faz a transferência do texto. Ela transfere apenas os códigos (ex: tblListaCidade.CodigoCidade, tblListaCidade.NomeCidade). Como devemos fazer para corrigir isso? Se não for possível, existe uma forma de eu adaptar a função do menu do Access "Vinculos do MS-Office - Analisar com Excel" em um botão do formulário, pois esta função transfere os dados de forma como eles deve ser visualizados e impressos.
Private Sub SeuBotão_Click()
'By JPaulo ® Maximo Access
Dim rst As DAO.Recordset, strSQL As String, strLivro As String, xls As Object
Set xls = CreateObject("Excel.Application")
strLivro = CurrentProject.Path & "\teste.xls"
xls.Workbooks.Open (strLivro)
xls.Visible = True
xls.Worksheets("Sheet1").Activate
strSQL = "SELECT * FROM teste;"
Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
xls.ActiveSheet.Range("A1").Select
xls.ActiveCell.CopyFromRecordset rst
xls.ActiveWorkbook.Save
xls.Application.Quit
Set xls = Nothing
End Sub