Olá pessoal,
Desenvolvi um sistema muito bom de inspeção de equipamentos, cuja função é o lançamento diário de incoveniências encontradas em equipamentos da área.
Mas fui desafiada com seguinte questão:
o gerenciador dessas informações necessita receber ao final de cada turno um relatório em formato de tabela dinâmica por email.
Então criei um planilha com os campos necessarios paar receber dados do access e atualizar minha tabela dinâmica na mesma planilha e o envio automático por email, até aí deu tudo certo, o problema é que eu não consigo deletar as informações anteriores para que se mantenha somente os dados novos filtrados.
Alguém tem uma sugestão?
Desenvolvi um sistema muito bom de inspeção de equipamentos, cuja função é o lançamento diário de incoveniências encontradas em equipamentos da área.
Mas fui desafiada com seguinte questão:
o gerenciador dessas informações necessita receber ao final de cada turno um relatório em formato de tabela dinâmica por email.
Então criei um planilha com os campos necessarios paar receber dados do access e atualizar minha tabela dinâmica na mesma planilha e o envio automático por email, até aí deu tudo certo, o problema é que eu não consigo deletar as informações anteriores para que se mantenha somente os dados novos filtrados.
Alguém tem uma sugestão?
- Código:
Dim rst As DAO.Recordset, strSQL As String, strLivro As String, xls As Object, Filtro As String
Me.Refresh
DatInicio = Format(Me.FiltroPartir, "mm/dd/yyyy")
DatFinal = Format(Me.FiltroAte, "mm/dd/yyyy")
If Me.FiltroPartir > 0 And Me.FiltroAte > 0 Then
If DCount("*", "tblFalhas", "Data=#" & DatInicio & "# ") > 0 Then
If MsgBox("Registro econtrado, Confirma Envio?", vbYesNo + vbQuestion, "CONFIRMAR") = vbNo Then Exit Sub
Filtro = Format(Me!FiltroPartir, "mm/dd/yyyy") & "# AND #" & Format(Me!FiltroAte, "mm/dd/yyyy")
Set xls = CreateObject("Excel.Application")
strLivro = CurrentProject.Path & "\docs\Relatorio de Inspeções.xlsm"
xls.Workbooks.Open (strLivro)
xls.Visible = True
xls.Worksheets("Tabela de Incoveniencias").Activate
strSQL = "SELECT * FROM RtblFalhas; WHERE Data Between #" & Filtro & "#;"
Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
xls.ActiveSheet.Range("A2").Select
xls.ActiveCell.CopyFromRecordset rst
xls.ActiveWorkbook.Save
xls.Application.Quit
Set xls = Nothing
Call email
Else
MsgBox "Não há registro nesse periodo"
End If
Else
MsgBox "Favor preencher campos de periodo"
End If