Ir para conteúdo
Fórum Script Brasil
  • 0

Relatório ACCESS para EXCEL incluso design


zebra2011

Pergunta

Boa tarde, pessoal!

Venho aqui pedir ajuda ao Fórum do SCRIPTBRASIL referente a uma dúvida e dificuldade na qual tenho, não somente eu e sim, outras pessoas que poderão resolver esta dúvida com esse fórum.

Tenho uma tabela na qual contém os campos NOME, E-MAIL, NOTA e TELEFONE, e de padrão o ID do registro no ACCESS, transformeu o mesmo em modo FORMULÁRIO estiloso, e em seguida coloquei um botão no formulário para abrir o relatório em modo "Exibição de Relatório", na qual apliquei a função "CONDICIONAL" que pinta a linha toda de amarelo caso a nota seja menor que 1% "... [NOTA]<'1%'..." - até ai tudo bem, ele pinta normalmente, todo funcional.

A dúvida é, quando faço a exportação pro EXCEL ou quando seleciona todo e copio no EXCEL, ele não vai com o DESIGN do relatório que criei, quero saber, como faço para exportar para o EXCEL já com todos os resultados inclusive com o DESIGN do relatório (colunas pintadas em amarelo se a nota for 0%).

Andei pesquisando na internet, há muitas respostas, porém a maioria são incompletas, não explica passo-a-passo. Existe a possibilidade vincular o ACCESS com o EXCEL (criar um design no próprio EXCEL) depois só clicar no botão RELATORIO que abre a plainhla do EXCEL já com as cores desejados? Não sei se fui claro.

O ideial seria quando abro o RELTORIO DO ACCESS ele desse opção para passar pro excel só que com o DESIGN já montado, porque não tem graça, quando exporto pro excel e depois ter que ficar arrumando o design (toma muito tempo).

Alguém pode me ajudar?

Link para o comentário
Compartilhar em outros sites

18 respostass a esta questão

Posts Recomendados

  • 0

Usa esse código:

DoCmd.OutputTo ObjectType:=acOutputReport, ObjectName:="NomeDoRelatorio", OutputFormat:="xls"

E troca NomeDoRelatorio pelo nome do seu relatório entre " (aspas) mesmo

Se você quiser pode colocar sem o , OutputFormat:="xls" que daí ele pergunta em que formato você quer exportar

Editado por Iceguy
Link para o comentário
Compartilhar em outros sites

  • 0

Isso é um código de VBA

no botão exportar que você fez, clique com o botão direito nele e selecione "Construir Evento..." aí abre essa tela

construtor.jpg

Aí você seleciona Construtor de código. Na tela que vai abrir tem lá uma função +- assim:

Private Sub Comando0_Click()

End Sub
aí você coloca o código lá dentro da Sub, fica assim:
Private Sub Comando0_Click()

DoCmd.OutputTo ObjectType:=acOutputReport, ObjectName:="NomeDoRelatorio", OutputFormat:="xls"

End Sub

Link para o comentário
Compartilhar em outros sites

  • 0

acho que isso pode ser util pois pra mim resolveu...... veja os exemplos a baixo ok

Para importar:

Const acAppendData = 2

Set objAccess = CreateObject("Access.Application")

objAccess.OpenCurrentDatabase "C:\XML\XML2.mdb"

objAccess.ImportXML "C:\XML\FUNCI.xml", acAppendData

Para exportar:

Const acExportTable = 0

Set objAccess = CreateObject("Access.Application")

objAccess.OpenCurrentDatabase "C:\XML\XML2.mdb"

objAccess.ExportXML acExportTable, "FUNCIONARIOS", "c:\XML\FUNCI.xml"

Declarar o objAccess:

Set objAccess = CreateObject("Access.Application")

=====================================================================================================

Que tal este exemplo?

Public Function exportar_dadosExcel()

strfich = "C:\testes2000\tassociados.xls"

Kill strfich

DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "tASSOCIADOS", strfich, True, ""

End Function

João Mateus

=====================================================================================================

DoCmd.TransferSpreadsheet acExport, 8, "Cns_201_Exportar", "C:\Fatura82004\Julho04.xls", True, "Sheet3!"

=====================================================================================================

DoCmd.TransferSpreadsheet acExport, 0, "NOME_DA_CONSULTA", "C:\PLANILHA.XLS", False, ""

=====================================================================================================

DoCmd.TransferSpreadsheet acExport, 0, "NOME_DA_CONSULTA", "C:\PLANILHA.XLS", False, "USERS!b2:j2500"

=====================================================================================================

Gostaria de saber se tem como especificar a partir de que célula ele vai jogar os valores no excel ( Ex.: C3 )

Public Sub ExcelTeste()

Dim objAPP As Object

Dim objwk As Object

Dim objSh As Object

Dim rst As ADODB.Recordset

Set objAPP = CreateObject("Excel.application")

objAPP.SheetsInNewWorkbook = 1

Set objwk = objAPP.Workbooks.Add

Set objSh = objwk.ActiveSheet

Set rst = CurrentProject.Connection.Execute("Select * from tabela")

objSh.Cells(3, 3).CopyFromRecordset rst

rst.Close

objwk.SaveAs "C:\teste.xls"

objwk.Close

objAPP.Quit

tambem tem este que pode ser util em alguns casos......

Exemplo:

Exemplo de como transferir uma tabela do Access através de Macro para uma planilha do Excel em células ou pastas específicas:

Nome da pasta: teste.xls

Nome da guia (planilha): teste1

Células: C3 a G10

A Macro abaixo executa essa tarefa:

Ação Argumentos

-------------------------------------------------------------------------

TransferirPlanilha Tipo de transferência - Exportar

Tipo de planilha eletrônica - Microsoft Excel 97

Nome da Tabela - Nome da tabela no mdb

Nome do Arquivo - C:\caminho\teste.xls

Contém nomes de campos - Sim

Intervalo - teste1!C3:G10

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...