こんにちは、「For without Next」というエラーを返すこのコードがあり、一番下の end サブが強調表示されています。
なぜこうなった?メールの本文に特定のセルの値を挿入しようとしています。
誰かがこれを手伝ってくれますか?
Sub Notify()
Dim name, email, evnt, status As Range
Dim SigString As String
Dim Signature As String
SigString = Environ("appdata") & _
"\Microsoft\Signatures\Will.txt"
If Dir(SigString) <> "" Then
Signature = GetBoiler(SigString)
Else
Signature = ""
End If
For Each name In Range(("B2"), Range("B2").End(xlDown))
For Each email In Range(("C2"), Range("C2").End(xlDown))
For Each evnt In Range(("E2"), Range("E2").End(xlDown))
For Each status In Range(("F2"), Range("F2").End(xlDown))
On Error Resume Next
With CreateObject("Outlook.Application").CreateItem(0)
.To = email.Value
.CC = email.Offset(0, 1).Value
.Subject = "Information You Requested"
.Body = "Dear " & name.Value & "," & vbNewLine & vbNewLine & _
"As you may know the 2014 race started on November 4th and will be open until November 15th in order for you to select your candidate." & vbNewLine & vbNewLine & _
"Your 2014 election is now On Hold since you have a previous " & evnt.Value & "event with a " & status.Value & "status in Workday. " & vbNewLine & vbNewLine & _
"In order for you to be able to finalize your Elections you need to finalize the event above as soon as possible." & vbNewLine & vbNewLine & _
"If you have any questions about this task please call us at 1-877-777-7777 option 8" & vbNewLine & vbNewLine & _
"Regards" & vbNewLine & vbNewLine & _
"Department"
.Display
'.Attachments.Add "C:\test.txt"
'.Send
End With
Next
End Sub
Function GetBoiler(ByVal sFile As String) As String
'Dick Kusleika
Dim fso As Object
Dim ts As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.GetFile(sFile).OpenAsTextStream(1, -2)
GetBoiler = ts.readall
ts.Close
End Function