Ir ao conteúdo

Igor Cremonezi

Membro Júnior
  • Posts

    7
  • Cadastrado em

  • Última visita

posts postados por Igor Cremonezi

  1.  Um usuário de outro fórum me apresentou uma saída, ainda tenho que fazer algumas alterações de acordo com o padrão que usamos, porém está funcionado, fica mais ou menos assim:

    Dim Corpo As String, Assunto As String
    If resp1 = vbYes Then
          Range("D4").Formula = "OK"
        Corpo = Corpo & "    - ISS - " & refm & "/" & refy & ", com vencimento em " & VencISSPISCOF & ";" & vbCrLf
        Assunto = Assunto & "ISS,"
    End If
    If resp2 = vbYes Then
          Range("E4").Formula = "OK"
        Corpo = Corpo & "    - ICMS - " & refm & "/" & refy & ", com vencimento em " & VencICMSAP & ";" & vbCrLf
        Assunto = Assunto & "ICMS,"
    End If

     etc... Essa é a ideia.

    • Curtir 1
  2. Além de enviar ele controla marcando um OK em uma tabela que eu fiz para controlar o que foi e o que não foi ainda. Então de acordo com as respostas, mudaria onde seria colocado o OK, o título do e-mail, o corpo, e o anexo.
    Bem, vou colocar a combinação de como se todas as respostas do usuário fosse sim e uma de como só a primeira fosse sim, apenas para servir de exemplo (como as variáveis não interfere em nada nesse meu problema, não coloquei a construção delas).
     

    resp1 = MsgBox("Tem ISS?", vbYesNo + vbQuestion, "ISS")
    resp2 = MsgBox("Tem ICMS?", vbYesNo + vbQuestion, "ICMS")
    resp3 = MsgBox("Tem PIS?", vbYesNo + vbQuestion, "PIS")
    resp4 = MsgBox("Tem COFINS?", vbYesNo + vbQuestion, "COFINS")
    resp5 = MsgBox("Tem CSLL?", vbYesNo + vbQuestion, "CSLL")
    resp6 = MsgBox("Tem IRPJ?", vbYesNo + vbQuestion, "IRPJ")
    
    If resp1 = vbYes And resp2 = vbYes And resp3 = vbYes And resp4 = vbYes And resp5 = vbYes And resp6 = vbYes Then
        Range("D4").Select
        ActiveCell.FormulaR1C1 = "OK"
        Range("E4").Select
        ActiveCell.FormulaR1C1 = "OK"
        Range("F4").Select
        ActiveCell.FormulaR1C1 = "OK"
        Range("G4").Select
        ActiveCell.FormulaR1C1 = "OK"
        Range("H4").Select
        ActiveCell.FormulaR1C1 = "OK"
        Range("I4").Select
        ActiveCell.FormulaR1C1 = "OK"
        .to = ("e-mail1")
        .cc = ("e-mail2")
        .Subject = "ISS, ICMS, PIS, COFINS, C SOCIAL e IRPJ - " & refm & "/" & refy
        .Body = " Prezado Cliente," & vbCrLf & _
               "" & vbCrLf & _
               " Segue anexo o(s) seguinte(s) imposto(s):" & vbCrLf & _
               "    - ISS - " & refm & "/" & refy & ", com vencimento em " & VencISSPISCOF & ";" & vbCrLf & _
               "    - ICMS - " & refm & "/" & refy & ", com vencimento em " & VencICMSAP & ";" & vbCrLf & _
               "    - PIS - " & refm & "/" & refy & ", com vencimento em " & VencISSPISCOF & ";" & vbCrLf & _
               "    - COFINS - " & refm & "/" & refy & ", com vencimento em " & VencISSPISCOF & ";" & vbCrLf & _
               "    - C SOCIAL - " & refm & "/" & refy & ", com vencimento em " & VencCSLLIRPJ & ";" & vbCrLf & _
               "    - IRPJ - " & refm & "/" & refy & ", com vencimento em " & VencCSLLIRPJ & "."
        .Attachments.Add "\\Igor\d\Meus Documentos\Arquivos para o site - Email\empresa1\Departamento Fiscal\IMPOSTOS - " & refy & "\" & refm & "\ISS - " & refm & " " & refy & " (VENCIMENTO " & Day(VencISSPISCOF) & "." & vmes & "." & vano & ").pdf"
        .Attachments.Add "\\Igor\d\Meus Documentos\Arquivos para o site - Email\empresa1\Departamento Fiscal\IMPOSTOS - " & refy & "\" & refm & "\ICMS - " & refm & " " & refy & " (VENCIMENTO " & Day(VencICMSAP) & "." & vmes & "." & vano & ").pdf"
        .Attachments.Add "\\Igor\d\Meus Documentos\Arquivos para o site - Email\empresa1\Departamento Fiscal\IMPOSTOS - " & refy & "\" & refm & "\PIS - " & refm & " " & refy & " (VENCIMENTO " & Day(VencISSPISCOF) & "." & vmes & "." & vano & ").pdf"
        .Attachments.Add "\\Igor\d\Meus Documentos\Arquivos para o site - Email\empresa1\Departamento Fiscal\IMPOSTOS - " & refy & "\" & refm & "\COFINS - " & refm & " " & refy & " (VENCIMENTO " & Day(VencISSPISCOF) & "." & vmes & "." & vano & ").pdf"
        .Attachments.Add "\\Igor\d\Meus Documentos\Arquivos para o site - Email\empresa1\Departamento Fiscal\IMPOSTOS - " & refy & "\" & refm & "\C SOCIAL - " & refm & " " & refy & " (VENCIMENTO " & Day(VencCSLLIRPJ) & "." & vtrim & "." & vtria & ").pdf"
        .Attachments.Add "\\Igor\d\Meus Documentos\Arquivos para o site - Email\empresa1\Departamento Fiscal\IMPOSTOS - " & refy & "\" & refm & "\IRPJ - " & refm & " " & refy & " (VENCIMENTO " & Day(VencCSLLIRPJ) & "." & vtrim & "." & vtria & ").pdf"
           If Range("D2") = "Igor" Then
        .HTMLBody = .HTMLBody & "<img src='file:////igor/d/Meus%20Documentos/Assinatura%20IGOR.jpg'>"
           End If
           If Range("D2") = "Adriano" Then
        .HTMLBody = .HTMLBody & "<img src='file:////igor/d/Meus%20Documentos/Assinatura_Adriano.JPG'>"
           End If
        .Display
        .Send
    End If
    
    If resp1 = vbYes And resp2 = vbNo And resp3 = vbNo And resp4 = vbNo And resp5 = vbNo And resp6 = vbNo Then
        Range("D4").Select
        ActiveCell.FormulaR1C1 = "OK"
        .to = ("e-mail1")
        .cc = ("e-mail2")
        .Subject = "ISS - " & refm & "/" & refy
        .Body = " Prezado Cliente," & vbCrLf & _
               "" & vbCrLf & _
               " Segue anexo o(s) seguinte(s) imposto(s):" & vbCrLf & _
               "    - ISS - " & refm & "/" & refy & ", com vencimento em " & VencISSPISCOF & "."
        .Attachments.Add "\\Igor\d\Meus Documentos\Arquivos para o site - Email\empresa1\Departamento Fiscal\IMPOSTOS - " & refy & "\" & refm & "\ISS - " & refm & " " & refy & " (VENCIMENTO " & Day(VencISSPISCOF) & "." & vmes & "." & vano & ").pdf"
           If Range("D2") = "Igor" Then
        .HTMLBody = .HTMLBody & "<img src='file:////igor/d/Meus%20Documentos/Assinatura%20IGOR.jpg'>"
           End If
           If Range("D2") = "Adriano" Then
        .HTMLBody = .HTMLBody & "<img src='file:////igor/d/Meus%20Documentos/Assinatura_Adriano.JPG'>"
           End If
        .Display
        .Send
    End If

     

  3.  Pessoal, estou começando agora a mexer na área de programação, e estou desenvolvendo um sistema onde eu trabalho (escritório de contabilidade) para envio de e-mails pelo excel com apenas um click. Estou usando algumas msgbox para saber quais impostos terão no determinado mês (no caso estou usando 6 msgbox). Porém ai que está o problema, dependendo das respostas do usuário se tem ou não determinado imposto, o assunto, corpo e anexos do e-mail mudam (mantendo sempre o mesmo padrão), ou seja, para cada combinação de respostas é executado um bloco de ação um pouco diferente. A única ideia que tive foi de usar o if, porém o código fica imenso, pois cada bloco tem mais ou menos 50 linhas e como são 6 msgbox com a opção de sim ou não, são 64 combinações de respostas diferentes, então imagina só o tamanho que ficaria:

       if msgbox1 = vbYes and 2 = yes and 3 = yes........

       50 linhas.....

       if 1 = vbno and 2 = yes and 3 = no........

     

     Alguém poderia me dar uma solução que encurtaria meu código? Desde já agradeço.

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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!