[英]Error on If statement after multiple executions
執行多次后,我在一行代碼上收到錯誤。 當它達到相同的執行級別時(在宏嘗試達到的目標中的同一位置),就會發生這種情況。 整個程序旨在生成多封電子郵件,並將它們發送到具有不同電子郵件附件的不同公司。 它一直工作到它到達2 / 3rds為止,直到出現1004錯誤。 有任何想法嗎? **是錯誤的位置。 下面的代碼是一個更大的例程的一小段。
謝謝!
'sets row_counter = row_num to avoid iteration over unecessary rows in ReportsbyFirm and resets continue to True for PDF attachment phase
continue = True
row_counter = row_num
With outMail
.To = firmEmail
.Subject = reportDate
.body = body
Do While continue = True
** If reportsByFirm.Cells(row_counter, firmcol) = cFirm Or reportsByFirm.Cells(row_counter, firmcol) = iFirm Then
pdfLocation = getPDFs(cFirm, iFirm, row_counter, reportsByFirm, trMaster, trSeparate, trName, reportDate)
.Attachments.Add (pdfLocation)
row_counter = row_counter + 1
ElseIf row_counter <> lRowReportsByFirm Then
row_counter = row_counter + 1
Else
continue = False
End If
Loop
.Display
End With
循環計數器中發生錯誤。 邏輯並不總是總是最終滿足於false,這將導致row_counter最終達到104K +值。 固定於此
Do While continue = True
If reportsByFirm.Cells(row_counter, firmcol) = cFirm Or reportsByFirm.Cells(row_counter, firmcol) = iFirm Then
pdfLocation = getPDFs(cFirm, iFirm, row_counter, reportsByFirm, trMaster, trSeparate, trName, reportDate)
.Attachments.Add (pdfLocation)
row_counter = row_counter + 1
ElseIf row_counter < lRowReportsByFirm Then
row_counter = row_counter + 1
ElseIf row_counter >= lRowReportsByFirm Then
continue = False
End If
Loop
.Display
End With
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.