Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • ベストアンサー

ACCESSを使ってメール送信

ACCESSで顧客情報を管理しているのですが、顧客全員に同じ内容のメールを送信したいと考えています。 ACCESSを使ってメールを送信する方法を教えてください。 なにかサンプルがあるとうれしいです。 ちなみに環境はWIN98、MS-ACCESS2000です。

質問者が選んだベストアンサー

  • ベストアンサー
noname#11157
noname#11157
回答No.3

このような感じです。 'メール送信はメーラーの機能を使用し、行う。 'メーラーがMAPIに対応している必要がある。 Private Sub snd_Click() Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset 'レコードセット Dim mtitl As String 'メールタイトル Dim mnaiyou As String 'メール送信内容 Dim mnaiyou2 As String 'メール送信内容(変換後) Dim i As Integer 'ループカウンタ mtitl = Me![titl] mnaiyou = Me![naiyo] '送信内容からCR・LFを除去 mnaiyou2 = "" For i = 1 To Len(mnaiyou) If Asc(Mid(mnaiyou, i, 1)) = 13 Or Asc(Mid(mnaiyou, i, 1)) = 10 Then mnaiyou2 = mnaiyou2 + Chr(Asc(Mid(mnaiyou, i, 1))) Else mnaiyou2 = mnaiyou2 + Mid(mnaiyou, i, 1) End If Next i '送信 Set cn = CurrentProject.Connection rs.Open "メールアドレステーブル", cn Do Until rs.EOF 'メールアドレスに「@」がないもの、スペースがあるものはメールアドレスの間違い If InStr(rs![メールアドレス], "@") > 0 And InStr(rs![メールアドレス], " ") < 1 Then DoCmd.SendObject , , acFormatTXT, rs![メールアドレス], , , mtitl, mnaiyou2, False End If rs.MoveNext Loop rs.Close Set rs = Nothing cn.Close Set cn = Nothing MsgBox "メール送信終了" End Sub

a68
質問者

お礼

出来ました。 ありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (2)

noname#11157
noname#11157
回答No.2

書き忘れがありました。 サンプルプログラムですが、HELPを参考にしてください。

a68
質問者

お礼

回答ありがとうございます。 実はACCESSは使い始めたばかりなのでヘルプ見ても よく分からかったです(-_-;) フォームに件名とメッセージを入力して 送信ボタンを押すとテーブルにあるメールアドレスを参照して メールを送信するものを作りたいと考えてます。 出来ればサンプルプログラムがあるとうれしいのですが… すいません、お願いします。

すると、全ての回答が全文表示されます。
noname#11157
noname#11157
回答No.1

SendObjectメソッドを使用してメールを送信します。 ただし、Access2000はバクがあり、タイトル・内容に全角が含まれているとエラーになることがあります。 Access2002またはAccess97を使用しましょう。

すると、全ての回答が全文表示されます。

関連するQ&A