dyego.vn,
Com relação ao não envio de email, acredito que é porque você não configurou adequadamente para o seu tipo de email (a culpa é minha. Não lhe informei). Veja, na linha onde consta:
objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "correio.intra.bnb"
que o valor correio.intra.bnb é correspondente ao servidor de correio aqui do meu trabalho. Para o seu, você deve configurar de acordo com o que é pra ser. Eu não sei quais são as configurações para outros servidores. Você pode botar no google "CDO - VBA configurações" e ver as mensagens que surgem sobre as configurações. Um bom exemplo está no link http://www.usandoaccess.com.br/tutoriai ... s.asp?id=1.
Quanto a questão de executar assim que a planilha abre, consertei esse problema (uma vez que a planilha pode ser aberta várias vezes no dia). Agora, quando o arquivo é aberto, o código checa, na célula "Z1" se a data que está lá registrada é igual a data do dia (a do relógio do micro). Se for igual não são emitidos email's. Essa data é registrada na célula Z1 assim que ele envia, a primeira vez, os primeiros email's. Desse modo, no dia seguinte, quando o código ler a célula Z1 e comparar com a data do micro e ver que são diferentes, ele executa a rotina de envio de email's e grava em Z1 a nova data.
Pintei a coluna Z toda com fonte na cor BRANCA e ocultei toda a coluna para que não seja impressa em caso de necessidade de impressão da planilha.
Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)
Atenciosamente
Wagner Morel
Postado : 26/10/2015 10:27 am