下記のコードにおいてエラーがでますなぜですか

miki yama 0 評価のポイント
2026-04-19T05:15:35.5066667+00:00

Sub sendemail()

Dim olapp As New Outlook.Application

Dim olmail As Outlook.MailItem

Dim ws As Worksheet

Dim i As Long

Dim savepath As String

For i = 1 To 38

Sheets("メイン").Range("a1") = i

Set olmail = olapp.CreateItem(olMailItem)

Set ws = Worksheets("メイン")

savepath = ThisWorkbook.Path & "\test.pdf"

Worksheets("TF報告書").ExportAsFixedFormat Type:=xlTypePDF, Filename:=savepath

olmail.To = ws.Range("b2").Value

olmail.CC = ws.Range("b3").Value

olmail.BCC =

olmail.Subject = ws.Range("b4")

olmail.Body = Replace(ws.Range("b5").Value, vbLf, vbCrLf)

olmail.Attachments.Add savepath

'olmail.Display

olmail.Send

Next i

MsgBox "メール送信完了です。"

olapp.Quit

Set olmail = Nothing

Set olapp = Nothing

End

End Sub

開発者テクノロジ | Visual Basic for Applications

1 件の回答

並べ替え方法: 最も役に立つ
  1. simo-k 96,135 評価のポイント ボランティア モデレーター
    2026-04-19T05:25:14.93+00:00

    コンバイル時点でエラーが出る筈ですので一つ一つ調べてみてください。
    ・Excelでのマクロと思われますが、Outlookライブラリを参照していますか?
    ・「olmail.BCC =」で右辺がありません。

    上記以外でもエラーが出るのであればエラーが出た部分までをデバックモードなども駆使して、状況によってはオブジェクトの値が想定しているものになっているかも確認してみてください。

    この回答は役に立ちましたか?


お客様の回答

質問作成者は回答に "承認済み"、モデレーターは "推奨" とマークできます。これにより、ユーザーは作成者の問題が回答によって解決したことを把握できます。