Sou novo no forum, e em VB, e logo de cara estou com um problema que parece ser fácil mas na verdade não consigo resolver o problema.
E seguinte estou enviando apenas o trecho do programa que faz este gerenciamento. O funcionamento é pegar o arquivo de uma pasta qualquer no micro mover para uma outra pasta por exemplo local ou rede, tanto faz, e também enviar um e-mail com este arquivo anexo para uma pessoa. O programa está fazendo tudo bonitinho mas o único problema é que não está anexando o arquivo....é só isso o problema...mas sinceramente não estou conseguindo resolver.
Public Sub SendMail()
On Error GoTo error_SendMail
Dim n, i, j As Long
Dim intPos As Long
Dim objFSO As New FileSystemObject
If (objOLMailItem Is Nothing) Then
'
Else
objOLMailItem.Subject = frmServicoGerenciamento.strAssunto
objOLMailItem.To = frmServicoGerenciamento.strEmail
objOLMailItem.Body = ""
If (frmServicoGerenciamento.strIDCliente = "MED") And (frmServicoGerenciamento.strArquivoSai = "*.*") Then
For i = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Body = objOLMailItem.Body & frmServicoGerenciamento.File1.List(i) & " , "
j = j + 1
If (j = 8) Then
objOLMailItem.Body = objOLMailItem.Body & vbCrLf
j = 0
End If
Next
objOLMailItem.Body = objOLMailItem.Body & vbCrLf
ElseIf (frmServicoGerenciamento.strIDCliente = "APA") Then
For i = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Body = objOLMailItem.Body & frmServicoGerenciamento.File1.List(i) & " , "
j = j + 1
If (j = 8) Then
objOLMailItem.Body = objOLMailItem.Body & vbCrLf
j = 0
End If
Next
objOLMailItem.Body = objOLMailItem.Body & vbCrLf
ElseIf (frmServicoGerenciamento.strIDCliente = "BSC") Then
For i = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Body = objOLMailItem.Body & frmServicoGerenciamento.File1.List(i) & " , "
j = j + 1
If (j = 8) Then
objOLMailItem.Body = objOLMailItem.Body & vbCrLf
j = 0
End If
Next
objOLMailItem.Body = objOLMailItem.Body & vbCrLf
ElseIf (frmServicoGerenciamento.strIDCliente = "ITA") Then
If frmServicoGerenciamento.strArquivoSai = "F*.*" Then
Dim temp As String
For i = 0 To frmServicoGerenciamento.File1.ListCount - 1
ReDim CurrentFileName(i + 1)
IntFile = FreeFile
CurrentFileName(i) = frmServicoGerenciamento.File1.List(i)
Open frmServicoGerenciamento.strDestinoSai & "\" & CurrentFileName(i) For Binary As #IntFile
Get #IntFile, , vProdfile
If Left(vProdfile.Header, 1) = "A" Or _
Left(vProdfile.Header, 1) = "H" Or _
Left(vProdfile.Header, 1) = "B" Or _
Left(vProdfile.Header, 1) = Chr(26) Then
' CHR(26) = ""
temp = FileDateTime(frmServicoGerenciamento.strDestinoSai & "\" & CurrentFileName(i))
strInfo(i) = " " & temp
objOLMailItem.Body = "Arquivo Data Chegada" & vbCrLf & vbCrLf
Else
If Left(vProdfile.Header, 2) = "1S" Or _
Left(vProdfile.Header, 2) = "1*" Then
temp = FileDateTime(frmServicoGerenciamento.strDestinoSai & "\" & CurrentFileName(i))
strInfo(i) = " " & temp
objOLMailItem.Body = "Arquivo Data Chegada" & vbCrLf & vbCrLf
Else
HeaderData = CEA(Mid$(vProdfile.Header, 1, 16))
FileManag (CurrentFileName(i))
temp = FileDateTime(frmServicoGerenciamento.strDestinoSai & "\" & CurrentFileName(i))
strInfo(i) = infoStatus & " " & temp
objOLMailItem.Body = "Arquivo Modelo Qtde Reg. Data Chegada" & vbCrLf & vbCrLf
End If
End If
Close #IntFile
Next i
For i = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Body = objOLMailItem.Body & frmServicoGerenciamento.File1.List(i) & strInfo(i) & vbCrLf
Next
Else
For i = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Body = objOLMailItem.Body & frmServicoGerenciamento.File1.List(i) & vbCrLf
Next
End If
Else
For i = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Body = objOLMailItem.Body & frmServicoGerenciamento.File1.List(i) & vbCrLf
Next
End If
objOLMailItem.Body = objOLMailItem.Body & vbCrLf & frmServicoGerenciamento.strTexto
intPos = Len(objOLMailItem.Body) + 10
If frmServicoGerenciamento.blnStatus Then
' If InStr(1, frmServicoGerenciamento.strArquivoSai, "*", vbTextCompare) = 0 Then
' objOLMailItem.Attachments.Add frmServicoGerenciamento.strPahtAttachments, olByValue, Len(objOLMailItem.Body) + 10, frmServicoGerenciamento.strArquivoSai
' Else
If (frmServicoGerenciamento.strIDCliente = "MED") Then
If (frmServicoGerenciamento.strIDArquivoRec = "MED-RET") Or (frmServicoGerenciamento.strIDArquivoRec = "MED-RET-VCC") Then
objOLMailItem.Attachments.Add frmServicoGerenciamento.strDestinoSai & "\" & "RETORNO.ZIP"
objFSO.DeleteFile frmServicoGerenciamento.strDestinoSai & "\" & "RETORNO.ZIP"
End If
ElseIf (frmServicoGerenciamento.strIDCliente = "APA") Then
If (frmServicoGerenciamento.strIDArquivoRec = "APA-JPG-SAIDA") Or (frmServicoGerenciamento.strIDArquivoRec = "APA-TXT-SAIDA") Then
ElseIf (frmServicoGerenciamento.strIDArquivoRec = "APA-ZIP-SAIDA") Then
Else
objOLMailItem.Attachments.Add frmServicoGerenciamento.strDestinoSai & "\" & "NAOACHOU.ZIP"
objFSO.DeleteFile frmServicoGerenciamento.strDestinoSai & "\" & "NAOACHOU.ZIP"
End If
ElseIf (frmServicoGerenciamento.strIDCliente = "BDB") Then
If (frmServicoGerenciamento.strIDArquivoRec = "BDB-RET-SAIDA-SAIDA") Then
Else
For n = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Attachments.Add frmServicoGerenciamento.strDestinoSai & "\" & Trim(frmServicoGerenciamento.File1.List(n)), olByValue, intPos, Trim(frmServicoGerenciamento.File1.List(n))
'enviou o(s) arquivo(s) deleta-los
'objFSO.DeleteFile frmServicoGerenciamento.strDestinoSai & "\" & Trim(frmServicoGerenciamento.File2.List(n))
intPos = intPos + 10
Next
End If
ElseIf (frmServicoGerenciamento.strIDCliente = "SPT") Then
For i = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Attachments.Add frmServicoGerenciamento.strDestinoSai & "\" & Trim(frmServicoGerenciamento.File1.List(i)), olByValue, intPos, Trim(frmServicoGerenciamento.File1.List(i))
intPos = intPos + 10
Next
'ElseIf (frmServicoGerenciamento.strIDCliente = "SPT") Then
' objOLMailItem.Attachments.Add frmServicoGerenciamento.strMoverSai & "\" & "Spt_Retorno.zip"
'enviou o(s) arquivo(s) deleta-los
' objFSO.DeleteFile frmServicoGerenciamento.strMoverSai & "\" & "Spt_Retorno.zip"
ElseIf (frmServicoGerenciamento.strIDCliente = "VVC") Or (frmServicoGerenciamento.strIDCliente = "VVT") Then
Else
For n = 0 To frmServicoGerenciamento.File1.ListCount - 1
objOLMailItem.Attachments.Add frmServicoGerenciamento.strDestinoSai & "\" & Trim(frmServicoGerenciamento.File1.List(n)), olByValue, intPos, Trim(frmServicoGerenciamento.File1.List(n))
'enviou o(s) arquivo(s) deleta-los
'objFSO.DeleteFile frmServicoGerenciamento.strDestinoSai & "\" & Trim(frmServicoGerenciamento.File2.List(n))
intPos = intPos + 10
Next
End If
'End If
End If
objOLMailItem.Save
objOLMailItem.Send
End If
Exit Sub
error_SendMail:
MsgBox Err.Description, vbCritical, "Class Module clsOutlook - SendMail"
End Sub
ps... Já testei o Outlook e não está com problemas para enviar e-mail´s com arquivos anexos.
Pessoal agradeço a todos desde de já... Navaguei um pouco no site, é já percebi de cara que é excelente.
Pergunta
Jcezario
E ai Galera,
Sou novo no forum, e em VB, e logo de cara estou com um problema que parece ser fácil mas na verdade não consigo resolver o problema.
E seguinte estou enviando apenas o trecho do programa que faz este gerenciamento. O funcionamento é pegar o arquivo de uma pasta qualquer no micro mover para uma outra pasta por exemplo local ou rede, tanto faz, e também enviar um e-mail com este arquivo anexo para uma pessoa. O programa está fazendo tudo bonitinho mas o único problema é que não está anexando o arquivo....é só isso o problema...mas sinceramente não estou conseguindo resolver.
ps... Já testei o Outlook e não está com problemas para enviar e-mail´s com arquivos anexos.
Pessoal agradeço a todos desde de já... Navaguei um pouco no site, é já percebi de cara que é excelente.
Valeu ...jcezario
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.