こんにちは。いつもお世話になっております。
現在、VB6.0でメーラーを起動し、そこへ添付ファイルを付けて送信を行うと言う作業を行っております。
ユーザー側で、実行ボタンを押したときに送信まで行ってしまうか、送信はせず、新規メールの起動だけで終るかを選択できるようになっています。
自分なりに色々と調べて、MAPIを使用したプログラムでの操作はできたのですが、テストメーラーをOutlook ExpressからMicrosoft Outlookに変更したら、送信部分が上手く動作しませんでした。
どのメーラーでも上手く動くように設定したいのですが、何か方法はありませんでしょうか?
また、送信時に出てしまう確認メッセージを出さずに自動送信する方法はありますか?MAPIを使用せずに添付ファイル付きのメールを送信する方法でも構いません。
宜しくお願い致します。
MAPISession1.SignOn
MAPIMessages1.SessionID = MAPISession1.SessionID
MAPIMessages1.Compose
MAPIMessages1.RecipType = mapToList
'あて先欄に表示させたい文字
MAPIMessages1.RecipDisplayName = "テストさん"
'あて先のメールアドレス
MAPIMessages1.RecipAddress = "SMTP:メールアドレス"
MAPIMessages1.MsgSubject = "納品明細"
MAPIMessages1.MsgNoteText = "本文内容" & vbCrLf
MAPIMessages1.AttachmentPathName = App.Path & "\納品明細.xls"
'チェック有りの場合は自動送信
If chkAuto.Value = 0 Then
'Falseにすると自動送信になります
MAPIMessages1.Send True
Else
MAPIMessages1.Send False
End If
MAPISession1.SignOff
No.3ベストアンサー
- 回答日時:
質問です。
>Outlook ExpressからMicrosoft Outlookに変更したら、送信部分が上手く動作しませんでした。
送信部分とは?
>MAPISession1.SignOff
ですか?
エラーが出たのですか?
エラーが出たのであれば、エラー番号とエラー内容を公開してくれませんか?
もしかしたらですが、、、単にOutlookのセキュリティ設定かもしれないので。。。
この回答への補足
ええと、先ほど補足部分に書いたのですが、エラーが出たのは
MAPIMessages1.Send (True 又は False)の部分です。
エラーメッセージは「予期せぬエラーが発生しました」
というものです。
MAPIを使わなくても、mailtoで添付ファイルつきのメールが送信可能ならばそれでもいいのですが、ファイルを添付する方法がわからず困っているのですっ(>_<)
色々と有難うございました。
結局上司から仕様の変更指示がありまして、現在の動作のままで良いと言われました。
Expressの方で動けばいいそうです…(-ω-)
正直、すっきりしない終わり方ですが次にやらないといけないこともあるのでまた自分で色々と調べて考えてみようと思います。
有難うございました。
No.2
- 回答日時:
この回答への補足
すみません。説明不足でした。
一応、お客様の依頼を受けてソフトを開発している状況なので、当方でシステムのメンテナンスが出来ないものは使いたくない…という状況です。
ですので他製品を組み込む…ということは出来ないので、VBの環境設定だとか、Windowsのシステムで解決したいのです。sendmailでファイルを添付し、自動送信できる方法があればそれが一番いいのかな…と思っているのですが、ファイルの添付方法がわからず、結局今の段階ではMAPIしか分かりません。けれど、その方法ではOutlookExpressしか動作せず、MSOutlookではMAPIMessages1.Send True
(又はFlase)の部分でエラーが返ってきてしまいました。
「どのメーラーでも」と書きましたがせめて上記二つのメーらで動くようにしたいのです。
No.1
- 回答日時:
どうしても汎用のメーラーを利用しないといけないのですか?
メールを送信するだけならフリーソフトのBASP21を利用すれば簡単にメールの送信をアプリケーション内に組み込むことはできますが。
ファイルの添付も簡単ですよ。
回答になってるかな?
参考URL:http://www.hi-ho.ne.jp/babaq/basp21.html
早速のご解答有難うございます。
どうしても…という訳ではないのでしょうが、「設定されているメーラーで」という指示を受けている以上それで何とかしたいのです。
フリーソフトなどを使うと、不具合が起こった際に当方で対応が出来ないのでそれが問題なのだと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- Gmail 【お助け!】サーバーからのメール送信でGmailに送信されない問題について 1 2023/06/20 22:03
- UNIX・Linux redmineにメールを飛ばす方法 1 2022/09/13 22:02
- その他(Microsoft Office) VBA メール送信済で実行されるはずが、実行されない時があります。 2 2023/02/02 14:05
- Visual Basic(VBA) VBAにてメール作成した際、一部指定箇所のみ赤文字にしたいです。 下記の内容ですと作成されたメール本 1 2022/04/27 13:31
- Visual Basic(VBA) エクセルVBAで教えて頂きたいのですが? 2 2022/12/31 20:28
- Outlook(アウトルック) Microsoft Outlookで送信すると、添付のとおり送信元の箇所に、不明な文字が表示 3 2023/02/11 14:56
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA EasyCommでの送信
-
VB6で、Bsmtp.dllを使って、メ...
-
フォームを再送信しますか?
-
NIFTYのCGIでSENDMAIL
-
VB.NET(2005)の"SerialPort" ...
-
チャットを作る
-
VBA メール一斉送信で添付ファ...
-
お問い合わせフォームから送信...
-
Safariで「本当にこのフォーム...
-
Googleフォームを回答したか確...
-
ホームページビルダーのメール...
-
ACCESSから、メール送信を行い...
-
Postmailの使用でメール受信が...
-
ビジネスメールの敬称
-
数字以外の入力をエラーにする...
-
EXCEL VBAで、URLを入力して、...
-
初歩的な事だと思います。 Sub...
-
アルファベットGの小文字の入力
-
エクセルVBA テキストボックス...
-
入力フォームへ、データを自動...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Safariで「本当にこのフォーム...
-
フォームを再送信しますか?
-
お問い合わせフォームから送信...
-
Googleフォームを回答したか確...
-
ACCESSから、メール送信を行い...
-
メールフォームで送信すると「...
-
CGIでメールのReturn-Pathに値...
-
ホームページビルダーのメール...
-
Accessでメール一括送信ソフ...
-
BASP21のSendMailとSendMailEx...
-
VBA EasyCommでの送信
-
ソケットで通信するデータの帯...
-
VB.NET(2005)の"SerialPort" ...
-
sendmailでの複数メールアドレ...
-
フォーム送信とURLエンコードに...
-
VB6で、Bsmtp.dllを使って、メ...
-
文字のフォントの色で分岐する...
-
c# メールが送信できたか確認
-
WriteFileで送信できたかの確認...
-
safariの 「本当にもう一度フ...
おすすめ情報