エラー原因がわかりません。 削除


Message#1 2022年4月20日(水)14時53分
From: raiden
VBAメール送信コードを参考にしながら書いたのですが、”アプリケーション定義またはオブジェクト定義のエラー”がでました。
コードを見ながら原因を探しているのですが、見つかりません。上級者の方原因がわかるお方見ていただけますか?
コードは
Option Explicit
Private Sub sendmailsample1()

Dim temprange As Range

Dim dataarray() As Variant

Dim listsh As Worksheet

Set listsh = ThisWorkbook.Worksheets("メール送信")

'データ範囲をはいれるに取得する
With listsh

Set temprange = .Range("a1").CurrentRegion

With temprange

Set temprange = .Resize(.Rows.Count - 1).Offset(1)

End With


dataarray = temprange.Value

End With


'outlookの定数。参照設定には不要

Const olmailitem As Long = 0

Dim olapp As Object


Dim olmailmessage As Object

Dim tempbody As String

Dim i As Long

'outlookのインスタンスを作成

Set olapp = CreateObject("Outlook.Application")

On Error GoTo errhdl





Dim msgbody As String


For i = 1 To UBound(dataarray)

'メッセージを新規作成

Set olmailmessage = olapp.createitem(olmailitem)
'メッセージの内容を設定して送信メール作成

msgbody = vbNullString

With olmailmessage

'「to」を指定

.To = dataarray(i, 2)

'「件名」を指定
.Subject = listsh.Range("f2").Value

'本文を「会社名」と「担当者名」「本文」から作成

tempbody = dataarray(i, 3) & vbCrLf & dataarray(i, 4) & _
vbCrLf & listsh.Range("g2").Value

'「添付ファイル」を指定

If listsh.Range("h2").Value <> "" Then

.attachments.Add ThisWorkbook.Path & listsh.Range("h2").Value

End If

'本文を指定

.htmlbody = msgbody & .htmlbody

End With


Next


exithdl:

Set olmailmessage = Nothing

Set olapp = Nothing

Exit Sub


errhdl:

MsgBox Err.Description, vbExclamation

Resume exithdl


End Sub


シートはシート1メール送信です。
シート内容は
A1 「No」
B1 「To」
c1 「会社名」
D1 「担当者」
E1 「なし」
F1 「件名」
を作成しております。
原因のお分かりになる方ご教示お願い致します。

上のメッセージを削除します。
よければパスワードを入力し、削除ボタンをクリックしてください。

パスワード:

ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください^^

VBAのInternetExplorer操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE(InternetExplorer)操作にも挑戦してみてください^^

VBAのIE制御入門RSS

RSSフィードを登録すると最新記事を受け取ることができます。

VBAIE操作のスカイプレッスン

エクセルVBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

dmb.cgi Ver. 1.068
Copyright(C) 1997-2014, hidekik.com