Bom dia Amigos,
Estou com a Macro abaixo,porém ela está buscando o relatório por data dentro de um BD em Access,poderiam me ajudar,preciso buscar o relatório dentro de uma planilha que esta na aba do arquivo que estou criando a macro.
Sub Gera_REL_DATA()
Application.ScreenUpdating = False
Dim DATA_INI, DATA_FIM As Date
DATA_INI = Format(Plan2.Range("B11").Value, "MM/DD/YYYY")
DATA_FIM = Format(Plan2.Range("B13").Value, "MM/DD/YYYY")
If IsDate(DATA_INI) And IsDate(DATA_FIM) Then
Sheets.Add(After:=Sheets(Sheets.Count)).Name = "Aprop_por_Datas"
'Armazena na variável o comando que fará a consulta SQL no BD Access
SU_ConectaBD
SQL = ""
SQL = SQL & "SELECT Tbl_Dados_Importados_TS.Col_enc, TbL_Enc_234.Descrição, Tbl_Dados_Importados_TS.Col_CF, Tbl_Dados_Importados_TS.Col_OS, Tbl_OS_Local_Servico_Responsavel.Descricao_OS, Tbl_Dados_Importados_TS.Col_Interf, Tbl_Interferencias.Descricao, Tbl_Dados_Importados_TS.Col_Data, Tbl_Dados_Importados_TS.Col_Hora, Tbl_Dados_Importados_TS.Col_Hora1, Tbl_Dados_Importados_TS.Col_Prod, Tbl_OS_Local_Servico_Responsavel.PEP_Sumariza_OS, IIf([JORNADA_TEORICA]=9,IIf([HHT]>5,[HHT]-1,[HHT]),IIf([JORNADA_TEORICA]=8,IIf([HHT]>=4.5,[HHT]-1,[HHT]),IIf([HHT]>=4.5,[HHT]-1,[HHT]))) AS HHT_S_ALMOCO, IIf(Round([Tbl_Dados_Importados_TS]![Col_Hora1]*24-[Tbl_Dados_Importados_TS]![Col_Hora]*24,3)<0,Round([Tbl_Dados_Importados_TS]![Col_Hora1]*24-[Tbl_Dados_Importados_TS]![Col_Hora]*24,3)+24,Round([Tbl_Dados_Importados_TS]![Col_Hora1]*24-[Tbl_Dados_Importados_TS]![Col_Hora]*24,3)) AS HHT"
SQL = SQL & " FROM (((Tbl_Dados_Importados_TS LEFT JOIN Tbl_OS_Local_Servico_Responsavel ON Tbl_Dados_Importados_TS.Col_OS = Tbl_OS_Local_Servico_Responsavel.OS) LEFT JOIN TbL_Enc_234 ON Tbl_Dados_Importados_TS.Col_enc = TbL_Enc_234.CF_Enc) LEFT JOIN Tbl_Compoe_Semana ON Tbl_Dados_Importados_TS.Col_Data = Tbl_Compoe_Semana.NUM_DATA) LEFT JOIN Tbl_Interferencias ON Tbl_Dados_Importados_TS.Col_Interf = Tbl_Interferencias.Código"
SQL = SQL & " WHERE (((Tbl_Dados_Importados_TS.Col_Data)>=#" & DATA_INI & "# And (Tbl_Dados_Importados_TS.Col_Data)<=#" & DATA_FIM & "#))"
SQL = SQL & " ORDER BY Tbl_Dados_Importados_TS.Col_Data, Tbl_Dados_Importados_TS.Col_Hora;"
Set rs = New ADODB.Recordset
rs.Open SQL, mConn
Range("A2").CopyFromRecordset rs
SU_DesconectaBD
Columns("I:J").Select
Selection.NumberFormat = "[$-F400]h:mm:ss AM/PM"
Columns("K:K").Select
Selection.NumberFormat = "#,##0.00"
Columns("M:M").Select
Selection.NumberFormat = "#,##0.00"
Columns("N:N").Select
Selection.Delete Shift:=xlToLeft
Range("A1").Select
Call FORMATA
Else
MsgBox "ERRO DATA", vbCritical
Plan2.Select
End If
Application.ScreenUpdating = True
End Sub
Postado : 29/08/2018 7:17 am