MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


+3
anderson_brito
augustopimenta
mfmaiafilho
7 participantes

    Exportar para excel com a personalização do grid feito pelo usuário

    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 17/9/2021, 20:06

    Boa tarde Srs.

    Utilizo atualmente Form + SubForm em todas as telas iniciais do sistema, como por exemplo de consulta....

    Eu criei recentemente um organizador de Grid, na realidade é onde você consegue salvar a personalização do Subformulário, Fonte, tamanho, Negrito, Italico etc..

    a questão é eu tenho um botão Exportar em cada uma dessas telas pra exportar por padrão a fonte RecordSet, porém eu utilizo esse comando pra fazer isso...

    Código:
    DoCmd.OutputTo acOutputQuery, "QryTemp", acFormatXLSX, varFile & ".xlsx", True

    a grande questão é que ele não trás o grid como está em formulario e o tamanho das colunas vem padrão ou seja fica amontuado....

    Esse é meu grid no formulário já com a personalização do usuário:

    Exportar para excel com a personalização do grid feito pelo usuário Grid10

    Esse é o arquivo exportado em excel uma bost4 kkkk:

    Exportar para excel com a personalização do grid feito pelo usuário Export10


    gostaria de uma maneira fizesse essa exportação de acordo com o SubFormulário....
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 20/9/2021, 15:27

    up....
    augustopimenta
    augustopimenta
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 150
    Registrado : 19/03/2012

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  augustopimenta 23/9/2021, 13:11

    Bom dia ..
    Utilizo esse código ai abaixo. Me atende bem ..

    Código:

    Dim objExcel As Object
    Dim strPlanilha As String
    Dim Msg As String

                'Indica o local e o nome do arquivo exportado
                strPlanilha = "C:\ControleSCIH\Exportados\" & "Relatório_Por_Setor" & "_" & Format(Date, "dd-mm-yy") & " " & Format(Now, "hhmmss") & ".xls"
                DoCmd.OutputTo acOutputQuery, "qryMicroorgPorSetorTabela", acFormatXLS, strPlanilha, 0
               
                Set objExcel = CreateObject("Excel.Application")
       
                'Esconde o arquivo
                objExcel.visible = False
       
                'Cria o arquivo
                With objExcel
                  .Workbooks.Open (strPlanilha)
                  .Selection.CurrentRegion.Select
                  .Selection.AutoFilter 'Já cria um auto-filtro na planilha Excel
                  .Range("A1").Select
                  .Workbooks(1).Close SaveChanges:=True
                  .Quit
       
                'Abre o local de salvamento
                MsgBox "Exportado Com Sucesso...", vbInformation
                Shell "C:\WINDOWS\explorer.exe """ & "C:\ControleSCIH\Exportados\" & "", vbNormalFocus
       
                End With
    avatar
    anderson_brito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 29/05/2017

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  anderson_brito 23/9/2021, 13:26

    Tentou usar apenas o xls ao inves de xlsx
    use tbm o acOutputForm

    desta forma:
    DoCmd.OutputTo acOutputForm, "QryTemp", acFormatXLSX, varFile & ".xls", -1
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2344
    Registrado : 13/12/2016

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  Alexandre Fim 23/9/2021, 14:25

    Mizael?

    Descomplica!!
    Cria uma tabela apenas de repositório (tipo temporária) e grava os dados da query nela.
    Em seguida, vc exporta esta tabela para o Excel.
    Desta forma, já vai filtrada. Mas antes, vc dá um UPDATE nesta tabela, nos campos Inativo = "S" ou "N"

    Espero ter ajudado

    []'s

    FIM
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 23/9/2021, 17:45

    Boa tarde Srs.

    anderson_brito achei interessante essa forma, porém eu trabalho com forms desvinculados, quando faço exportação da maneira como vocÊ indicou ele vem todo o design mas não vem os dados.... precisaria pensar em criar algo temporário..

    augustopimenta vou testar seu exemplo hoje a tarde!

    Alexandre Fim sua ideia foi muito boa , vou tentar fazer pra ver como fica o resultado mano

    Obrigado!

    Tmjs
    avatar
    anderson_brito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 29/05/2017

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  anderson_brito 23/9/2021, 18:46

    Essa QryTemp é um form?

    na sua msg vc disse que ja tem o subformulario com os dados que acredito ser essa QryTemp. é isso mesmo?
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 26/9/2021, 18:07

    Boa tarde Anderson, Qry = Query = Consulta, Temp = Temporária,

    é uma consulta temporária criada ao Clicar no botão Exportar, após dá o DoCmd.Output acOutputQuery eu apago a QryTemp,

    Cara, tentei fazer com a acOutputForm, fica com o Design que o usuário colocou, só não trás os dados, pois os meus formularios são desvinculados, mas vou tentar fazer essa façanha ainda...
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 25/10/2021, 20:02

    Crying or Very sad up!
    avatar
    egnaldo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 59
    Registrado : 11/03/2012

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  egnaldo 26/10/2021, 11:40

    Bom dia, não sei se ajuda mas uso este comando no exportar :

    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim SQL As String
    Dim sessao, folha, iRow, i, xlsheet
    Set sessao = CreateObject("Excel.Application")

    Set db = CurrentDb()

    SQL = "SELECT .............."
    Set rs = db.OpenRecordset(SQL)

    sessao.Workbooks.Add
    Set folha = sessao.Worksheets(1)


    iRow = 7

    If Not rs.EOF Then
    Do Until rs.EOF
    For i = 0 To rs.Fields.Count - 1
    folha.Cells(iRow, i + 1).Value = rs.Fields(i)
    folha.Cells(iRow, 1).HorizontalAlignment = -4108 ' centraliza a primeira coluna
    folha.Cells(iRow, 6).NumberFormat = "0.00%"
    Next
    iRow = iRow + 1
    rs.MoveNext
    Loop

    End If

    folha.Cells(1, 1) = "TITULO"
    folha.Range(folha.Cells(1, 1), folha.Cells(1, 6)).SELECT ' seleciona a primeira linha e até a sexta coluna
    folha.Range(folha.Cells(1, 1), folha.Cells(1, 6)).merge ' mescla a primeira linha e até a sexta coluna
    folha.Cells(1, 1).HorizontalAlignment = -4108
    folha.Cells(1, 1).Font.Size = 14
    folha.Cells(2, 1) = "TEXTO 01 "
    folha.Cells(2, 1).Font.Size = 14
    folha.Cells(3, 1) = "TEXTO 02"
    folha.Cells(3, 1).Font.Size = 14
    folha.Cells(4, 1) = "TEXTO 03"
    folha.Cells(4, 1).Font.Size = 14
    folha.Cells(5, 1) = "TEXTO 04"
    folha.Range(folha.Cells(5, 1), folha.Cells(5, 6)).SELECT ' seleciona a primeira linha e até a sexta coluna
    folha.Range(folha.Cells(5, 1), folha.Cells(5, 6)).merge ' mescla a primeira linha e até a sexta coluna
    folha.Cells(5, 1).HorizontalAlignment = -4108
    folha.Cells(5, 1).Font.Size = 14

    folha.Cells(6, 1) = "Qtd"
    folha.Cells(6, 1).HorizontalAlignment = -4108
    folha.Cells(6, 1).Interior.Color = RGB(218, 221, 227) 'ou assim .Interior.ColorIndex = 5

    folha.Cells(6, 2) = "Fornecedor"
    folha.Cells(6, 2).HorizontalAlignment = -4108
    folha.Cells(6, 2).Interior.Color = RGB(218, 221, 227)
    folha.Cells(6, 2).ColumnWidth = 15 'largura da coluna

    e assim em diante ....
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 28/10/2021, 01:52

    Olá egnaldo eu utilizo formulário desvinculado, essa função copia o que está na tela?

    vou testar ela utiliza-se alguma biblioteca de referência ?
    avatar
    egnaldo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 59
    Registrado : 11/03/2012

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  egnaldo 28/10/2021, 05:57

    Oi, não copia o que está na tela, como pode ver tem que abrir um recordset, que pode ser uma tabela temporária, e não utiliza alguma biblioteca específica.
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 28/10/2021, 21:24

    Very hard...

    acredito que essa questão está dificil pra ser resolvida! ainda não consegui estava tentando da forma que o Alexandre indicou porém ele trás apenas o design da tabela
    Marcelo David
    Marcelo David
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3537
    Registrado : 21/04/2011

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  Marcelo David 28/10/2021, 21:47

    Boa tarde,
    poderá encontrar o caminho das pedras nesse meu exemplo:
    https://www.maximoaccess.com/t36386-exportar-todas-as-tabelas-vinculadas-local-odbc-para-excel


    .................................................................................
    Aprenda como criar formulário desacoplado.
    Clique aqui e conheça o treinamento.
    Exportar para excel com a personalização do grid feito pelo usuário Marcel11
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 28/10/2021, 22:18

    Marcelo boa tarde,

    Primeiramente parabéns pelo seu app ficou mto bom, realmente

    Porém exportar os dados do Grid pra dentro de um query e depois criar um arquivo de saída é facil, eu já consigo fazer isso, porém isso me afeta de diversas formas, vamos lá

    eu tenho uma query com 50 colunas, cada coluna tem um titulo no Banco de Dados SQL, os titulos são tipo ID_LSTPRE, LST_NOM, LST_ORD e assim por diante, a minha postagem é justamente por isso ao exportar os dados o Usuário precisa identificar os dados pelo cabeçalho da coluna,

    Eu estou utilizando Alias do SQL pra suprir essa deficiência....

    Select ID_LSTPRE AS [Código],
    LST_NOM AS [Nome da Lista],
    LST_ORD AS [Nº da Ordem],
    FROM TCOM_LSTPRE

    outra forma que me afeta, realmente o intuito é somente exportar os dados, mas que tal exportar os dados de uma maneira já pronta e com layout conforme o usuário determinou lá no aplicativo ?

    Eu não sei o impacto de trabalhar ao menos com os forms de pesquisas vinculados, eu tenho um aplicativo antigo que é todo vinculado e agora ele tá me dando dor de cabeça....
    mfmaiafilho
    mfmaiafilho
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 410
    Registrado : 02/08/2018

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  mfmaiafilho 4/11/2021, 20:53

    Boa tarde, como não houve respostas e acredito eu ser algo impossível de se fazer...

    Eu utilizo um formulário desvinculado, onde executo esse código no formulário principal para que o subformulario (folha de dados) seja carregado

    o strWhere é uma String onde guarda os filtros etc

    Dim rs As DAO.Recordset
    Set rs = CurrentDb.OpenRecordset(strWhere, dbOpenSnapshot)
    Set Me.FolhaDados.Form.Recordset = rs

    eu precisava saber como faço pra exportar um recordset para excel ?
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3610
    Registrado : 22/11/2016

    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  DamascenoJr. 5/11/2021, 01:47

    eu precisava saber como faço pra exportar um recordset para excel ?

    Salve os dados em uma tabela temporária e execute um procedimento de exportação padrão.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.

    mfmaiafilho gosta desta mensagem


    Conteúdo patrocinado


    Exportar para excel com a personalização do grid feito pelo usuário Empty Re: Exportar para excel com a personalização do grid feito pelo usuário

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/5/2022, 18:21