Ir ao conteúdo

Excel Selecionar linha de datas do dia anterior e enviar por email


Ir à solução Resolvido por Visitante,

Posts recomendados

Postado
10 horas atrás, Cleomirfl disse:

Sabe me dizer o porque que isso ocorre?

Sem ver o seu arquivo, não. Imagens não servem.

 

Postado
12 horas atrás, osvaldomp disse:

 

@osvaldomp ..Opa..desculpe meu amigo...vou disponibilizar aqui...Observe q a formatação condicional nas colunas F e P não saem quando clico no botão "ENVIAR RELATÓRIO RECEBIMENTO DE CALES" como vemos na imagem abaixo...

 

image.thumb.png.6dc28f94165f4eeeaa526304778c76a2.png

Estranho...

REC.xlsx

Postado

@osvaldomp ..desculpe pela demora em responder meu camarada, fiquei sem pc esses dias, mas vamos lá..tinha me esquecido de salvar como pasta autorizada para macro...rsrs..mas tá aí no anexo agora..

 

Não estou conseguindo anexar a planilha com o código, está dando que não é permitido salvar a planilha..não sei porque..mas diponibilizo o código abaixo..está salvo no Módulo...conforme figura abaixo;

 

image.png.927b4028356a085ff0fa3a4272d4f0e5.png

 

Sub EnviaIntervalo()
 Application.ScreenUpdating = False
 With Sheets("RECEBIMENTO DE CALES")
  .AutoFilterMode = False
  .Range("A5:P5").AutoFilter Field:=1, Criteria1:= _
      ">=" & CDbl(Date - 4), Operator:=xlAnd, Criteria2:="<" & CDbl(Date + 1)
  Sheets.Add
  .Range("A5:P" & .Cells(Rows.Count, 1).End(3).Row).Copy [A1]
  .AutoFilterMode = False
 End With
 Columns("A:P").AutoFit
 Range("A1:P" & Cells(Rows.Count, 1).End(3).Row).Select
 ActiveWorkbook.EnvelopeVisible = True
 With ActiveSheet.MailEnvelope
  .Introduction = "Informações Apuradas as 06h"
  .Item.To = "[email protected]"   'coloque o destinatário da mensagem
  .Item.Subject = "Recebimento de Cales"
  .Item.Send
 End With
 Application.DisplayAlerts = False
 ActiveSheet.Delete
 Application.DisplayAlerts = True
 Application.ScreenUpdating = True
 
 MsgBox "Relatório Enviado com sucesso!"
 
End Sub

Obrigado pela ajuda aí mano...

REC.xlsx

  • Solução
Postado

substitua esta linha

  .Range("A5:P" & .Cells(Rows.Count, 1).End(3).Row).Copy [A1]


 

por estas

  .Range("A5:P" & .Cells(Rows.Count, 1).End(3).Row).Copy
  [A1].PasteSpecial xlPasteValues
  [A1].PasteSpecial xlPasteFormats

 

Postado
11 horas atrás, osvaldomp disse:

substitua esta linha


  .Range("A5:P" & .Cells(Rows.Count, 1).End(3).Row).Copy [A1]


 

por estas


  .Range("A5:P" & .Cells(Rows.Count, 1).End(3).Row).Copy
  [A1].PasteSpecial xlPasteValues
  [A1].PasteSpecial xlPasteFormats

 

Excelente meu camarada...acredito q agora não tenhamos mais surpresas..rsrsr..valeu pelo suporte...estarei iniciando em janeiro um curso de VBA, espero que um dia consiga desenrolar desse jeito como você! Obrigado mais uma vez!!!

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...