2013-11-15 69 views
0

我有以下代碼是爲了轉發電子郵件,幷包含我自己的消息。從文本文件中讀取值,轉發電子郵件

Private Sub Items_ItemAdd(ByVal item As Object) 
Dim filenum As Integer 
Dim current_number As String 

filenum = FreeFile() 
Open "G:\Infrastructure Services\Engineering Services\Hazard Report Number.txt" For Input As #filenum 
While Not EOF(filenum) 
Line Input #filenum, current_number 

Wend 


If item.Class = olMail Then 
    If Left$(item.Subject, 29) = "Hazard Identification Report" Then 
     Dim Msg As Outlook.MailItem 
     Dim NewForward As Outlook.MailItem 
     Dim myFolder As Outlook.MAPIFolder 
     Dim olApp As Outlook.Application 
     Dim olNS As Outlook.NameSpace 

     Set Msg = item 
     Set NewForward = Msg.Forward 
     Set olApp = Outlook.Application 
     Set olNS = olApp.GetNamespace("MAPI") 

     strSender = "" 
strsenderName = Msg.SenderEmailAddress 





If strsenderName = "EX" Then 
    Set objSender = itm.Sender 
    If Not (objSender Is Nothing) Then 
    Set objExchUser = Sender.GetExchangeUser() 
    If Not (objExchUser Is Nothing) Then 
     strSender = objExchUser.PrimarySmtpAddress 
    End If 
    End If 
Else 
    strSender = strsenderName 
End If 



     With NewForward 
      .Subject = "Hazard report reciept number:" 
      .To = strSender 
      .HTMLBody = "TYhank you for your email" 
      .Send 
     End With 
     End If 
    End If 

ExitProc: 
    Set NewForward = Nothing 
    Set Msg = Nothing 
    Set olApp = Nothing 
    Set olNS = Nothing 


End Sub 

我已經從我的文本文件中讀取了值,沒有問題。我的問題是如何從文本文件中刪除值,並將值+1打印迴文本文件中?

此外,這是爲了將郵件轉發給發件人,包括其原始附件和郵件(一張照片和一些GPS座標),但它不是由於某種原因,我不明白爲什麼。

確實有任何建議嗎?

+0

你應該爲此創造兩個不同的問題。在回答你的第一個問題時,你實際上需要創建一個包含你想要的所有數據的新文本文件。編輯文本文件的唯一方法就是使用ADO,我甚至不確定你可以用它做。我知道ADO只能用於訪問結構化文本文件,如XML或CSV。 – HK1

回答

0

我不太明白你的第二個問題是什麼(「但不是因爲某些原因,我不明白爲什麼」不是完美的錯誤描述)。

但對於一個新的值使用這種更換一個txt文件:

Call textfile_replace(Value + 1) 

,這是代碼,您需要:

Sub textfile_replace(mytext As String) 
    On Error GoTo Fehler 
    Dim Datei As String 
    Dim Fnr As Long 

    Datei = "c:\mytest.txt" 
    Fnr = FreeFile 
    Open Datei For Output As Fnr 
Print #Fnr, mytext 
    Close Fnr 
    Exit Sub 

Fehler: 
    MsgBox "error" & Err.Number & " " & Err.Description 
End Sub 

如果您發送您有更多的信息是什麼問題發送郵件我也會盡力幫助你。

最大

+0

我目前得到一個Error55文件已經打開錯誤彈出 - 任何建議,這是從哪裏來的? – scb998

+0

錯誤來自哪一行?重啓Outlook/PC後,還是僅在第二次運行後,它是否也會變直?你確定沒有其他程序阻止文件? – Max

+0

我收到我的收件箱中的電子郵件後出現錯誤。它也似乎通過宏發送2或3封回覆郵件。 – scb998

相關問題