Excel VBA: Como atribuir conteúdo do arquivo .txt a uma variável de tipo string?

0

Eu fiz um pequeno sub no excel que envia um e-mail de acordo com os parâmetros que você digita:

Sub Mail_LSP(mailsubject As String, consignee As String, coalcopy As String, mailbody As String)

Dim mlook As Outlook.MailItem

Set mlook = Outlook.Application.CreateItem(olMailItem)
mySubject = mailsubject
mlook.To = consignee
mlook.CC = coalcopy
mlook.Subject = mailsubject
mlook.Body = mailbody
mlook.Send

End Sub

Eu quero melhorar o parâmetro mailbody, existe alguma maneira de atribuir o conteúdo de um arquivo .txt para uma variável, então eu posso usar essa variável como um parâmetro para o meu procedimento?

    
por Ruben 09.07.2014 / 16:46

2 respostas

0

Encontrou uma maneira de usar: Open mailbody For Input As #1 e, em seguida, Line Input #1

Sub Mail_LSP(mailsubject As String, consignee As String, coalcopy As String, mailbody As String)

Dim mlook As Outlook.MailItem
Dim linecontent As String
Dim mailcontent As String

Open mailbody For Input As #1

Do Until EOF(1)
    Line Input #1, linecontent
    mailcontent = mailcontent & vbNewLine & linecontent & vbNewLine
Loop

Close #1

Set mlook = Outlook.Application.CreateItem(olMailItem)
mySubject = mailsubject
mlook.To = consignee
mlook.CC = coalcopy
mlook.Subject = mailsubject
mlook.Body = mailcontent
mlook.Send

End Sub
    
por 09.07.2014 / 21:39
0

Experimente FileSystemObject :

Private Sub CommandButton1_Click()
Set fso = CreateObject("Scripting.FileSystemObject")
Path = Range("E3")
Set filestream = fso.OpenTextFile(Path, 1)
contents = filestream.ReadAll()
Range("F4") = contents
End Sub
    
por 09.07.2014 / 20:56