[▲前のスレッド]

[18086] EXCELからの送信 
2003/6/5 (木) 14:31:06 山田
p0049-ip01kanazawa.ishikawa.ocn.ne.jp / Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
EXCELからVBAを利用して添付ファイル付きのメールを送信したいのですが
解りません。掲示板の中も捜したのですが見つかないので教えて下さい

[18090] Re:EXCELからの送信 
2003/6/5 (木) 16:33:30 Wing
210.167.252.240 / Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705; .NET CLR 1.1.4322)
▼ 山田さん
>>解りません。

何がわからないのか書いてください。

投稿前に下記リンク先もお読みください。

http://www.geocities.co.jp/SiliconValley
/5656/


[18092] Re2:EXCELからの送信 
2003/6/5 (木) 16:48:27 山田
p0508-ip01kanazawa.ishikawa.ocn.ne.jp / Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
すいません。windows98,Excel2000を使用しています。
以前、EXCELでVBAを利用して、OUTLOOKでメールを送信していたのですが
同様にBeckyで送信したいのです。そのVBAのコーディングの方法が
解りません。
ちなみに以前使用していたVBAの内容は
Private Sub CommandButton1_Click()
   Dim mystr       As String
   Dim myOLApp     As New Outlook.Application
   Dim myOLItem    As Outlook.MailItem
   Dim mySubject   As String
 
   ActiveWorkbook.Save
   Set myOLItem = myOLApp.CreateItem(olMailItem)
   Set myAttachments = myOLItem.Attachments

   pName = ActiveWorkbook.FullName
   myAttachments.Add pName, olByValue, 1, ""
   mySubject = "シート"
    With myOLItem
        .Recipients.Add (ActiveSheet.Range("J1"))
        .Subject = mySubject
        .Body = ""
    End With
    myOLItem.Send
End Sub
です

[18105] Re3:EXCELからの送信 
2003/6/6 (金) 01:03:01 Shusaku
ntkngw030243.kngw.nt.adsl.ppp.infoweb.ne.jp / INCM1.21d
▼ 山田さん
>以前、EXCELでVBAを利用して、OUTLOOKでメールを送信していたのですが
>同様にBeckyで送信したいのです。そのVBAのコーディングの方法が
>解りません。


Becky!はOLE(COM)をサポートしていないので、Outlookと同じようには出来ません。
その代わり"Simple MAPI"が使えますから、以下のようにすれば良いと思います。

Private Sub CommandButton1_Click()
  ActiveWorkbook.Save
  Set mapiSession = CreateObject("MSMAPI.MAPISession")
  Set mapiMessages = CreateObject("MSMAPI.MAPIMessages")
  mapiSession.SignOn
  With mapiMessages
    .SessionID = mapiSession.SessionID
    .Compose
    .AttachmentPathName = ActiveWorkbook.FullName
    .RecipAddress = ActiveSheet.Range("J1")
    .MsgSubject = "シート"
    .MsgNoteText = ""
    .Send (False)
  End With
  mapiSession.SignOff
End Sub

[18109] Re4:EXCELからの送信 
2003/6/6 (金) 08:59:36 山田
p0623-ip01kanazawa.ishikawa.ocn.ne.jp / Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
▼ Shusakuさん
>   Set mapiSession = CreateObject("MSMAPI.MAPISession")

のステップで「ActiveXコンポーネントはオブジェクトを作成できません」
というエラーメッセージがでます。

[18119] Re5:EXCELからの送信 
2003/6/6 (金) 13:04:31 Shusaku
ntkngw030243.kngw.nt.adsl.ppp.infoweb.ne.jp / INCM1.21d
▼ 山田さん
>>   Set mapiSession = CreateObject("MSMAPI.MAPISession")
>
>のステップで「ActiveXコンポーネントはオブジェクトを作成できません」
>というエラーメッセージがでます。


たぶん、"Microsoft MAPI Controls" がインストールされていないからでしょう。
googleなどで "MSMAPI32.OCX ダウンロード" を検索すれば入手方法が分かります。
それをダウンロードしてActiveXコントロールをインストールすれば良いはずです。
(regsvr32.exe C:\WINDOWS\SYSTEM\MSMAPI32.OCX での登録も忘れずに...)

[18121] Re6:EXCELからの送信 
2003/6/6 (金) 14:43:59 山田
p0725-ip01kanazawa.ishikawa.ocn.ne.jp / Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
MSMAPI32.OCXをダウンロードし登録しても同じでした。
▼ Shusakuさん
> それをダウンロードしてActiveXコントロールをインストールすれば良いはずです。
ActiveXコントロールのインストール方法が解りません。教えて下さい


[18123] Re7:EXCELからの送信 
2003/6/6 (金) 15:24:13 匿名の臆病者
ppp33.air128.dti.ne.jp / Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4b) Gecko/20030507
イヤ、それくらいは余所ででも調べようよ。

[18125] Re8:EXCELからの送信 
2003/6/6 (金) 15:36:57 山田
p0435-ip01kanazawa.ishikawa.ocn.ne.jp / Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
▼ 匿名の臆病者さん
> イヤ、それくらいは余所ででも調べようよ。
初心者なもので、どう調べれば良いかも解りません。
お願いします

[18127] Re7:EXCELからの送信 
2003/6/6 (金) 16:22:28 鈴木@大阪HomePage
tyo102.gate.nec.co.jp / INCM1.23a
> ActiveXコントロールのインストール方法が解りません。教えて下さい

ダウンロードしたサイトや添付されているドキュメントを参照してください。

--
(宣伝)質問する前にFAQを… "B2 FAQ Working Group"
http://www.becky-users.net/faq.html

[18131] Re8:EXCELからの送信 
2003/6/6 (金) 19:24:16 山田
p0340-ip01kanazawa.ishikawa.ocn.ne.jp / Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
やはり色々やってみましたが結果は同じです。原因が見当もつきません。

[18135] Re7:EXCELからの送信 
2003/6/6 (金) 20:31:57 Shusaku
ntkngw030243.kngw.nt.adsl.ppp.infoweb.ne.jp / INCM1.21d
▼ 山田さん
>ActiveXコントロールのインストール方法が解りません。教えて下さい

regsvr32.exe での登録時に以下のようなsucceededというメッセージが
表示されたのであれば、インストールは正常に完了していると思います。

RegSvr32 -- "DllRegisterServer in c:\windows\system\msmapi32.ocx succeeded."

開発環境(VisualBasic)がインストールされていない状態のパソコンで試してみると、
「ActiveXコンポーネントはオブジェクトを作成できません」の現象が再現しました。
EXCELのVBAでなく、VBScriptで実行してみると詳細なエラー内容が表示されました。

  エラー: クラスを使用する使用許可がありません。
  コード: 0x80040112 (← これは MAPI_E_SESSION_LIMIT のエラー番号)

これを調査すると、どうやら「実行時ライセンス(ランタイムライセンス)」とか、
「開発時ライセンス(デザインタイムライセンス)」の有無に関係しているようです。

試しに、CreateObject()するのではなく、"Microsoft MAPI Session Control" と
"Microsoft MAPI Message Control" の2つのコントロールをEXCELに貼り付けて、
以下のようにコードを修正して実行してみたら、どうなりますか?
(MAPISession1とMAPIMessages1は貼り付けたコントロールのオブジェクト名です)

Private Sub CommandButton1_Click()
  ActiveWorkbook.Save
  MAPISession1.SignOn   '←変更箇所
    With MAPIMessages1  '←変更箇所
      .SessionID = MAPISession1.SessionID  '←変更箇所
      .Compose
      .AttachmentPathName = ActiveWorkbook.FullName
      .RecipAddress = ActiveSheet.Range("J1")
      .MsgSubject = "シート"
      .MsgNoteText = ""
      .Send (False)
  End With
  MAPISession1.SignOff  '←変更箇所
End Sub

これでもエラーが出て実行できないなら、もう今の私には原因の見当がつきません。
VBAでの実現を諦めて、[ファイル(F)]→[送信(D)]→[メールの宛先(A)]メニューで
代用するなら、C:\WINDOWS\WIN.INI の[Mail]セクションに MAPIX=1 を追加すれば
可能になると思います。(Windows2000で確認済み。Windows98での動作は不明。)

[18138] Re8:EXCELからの送信 
2003/6/7 (土) 08:26:47 山田
p0600-ip01kanazawa.ishikawa.ocn.ne.jp / Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
Shusakuさん有難うございます
▼ Shusakuさん
> regsvr32.exe での登録時に以下のようなsucceededというメッセージが
> 表示されたのであれば、インストールは正常に完了していると思います。
> RegSvr32 -- "DllRegisterServer in c:\windows\system\msmapi32.ocx succeeded."

  メッセージは出ました

> 試しに、CreateObject()するのではなく、"Microsoft MAPI Session Control" と
> "Microsoft MAPI Message Control" の2つのコントロールをEXCELに貼り付けて、

  「2つのコントロールをEXCELに貼り付けて」と言う所がわかりません。
  EXCELのどこに貼りつけるのでしょうか?

[18141] Re9:EXCELからの送信 
2003/6/7 (土) 12:08:36 yu
203-165-17-173.home.ne.jp / Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030314
これ以上はVBAに関するサイトをお訪ねすることをお推めします。

[18144] Re9:EXCELからの送信 
2003/6/7 (土) 14:00:00 Shusaku
ntkngw030243.kngw.nt.adsl.ppp.infoweb.ne.jp / INCM1.21d
▼ 山田さん
>> 試しに、CreateObject()するのではなく、"Microsoft MAPI Session Control" と
>> "Microsoft MAPI Message Control" の2つのコントロールをEXCELに貼り付けて、
>  「2つのコントロールをEXCELに貼り付けて」と言う所がわかりません。
>  EXCELのどこに貼りつけるのでしょうか?


ううっ。まさかコントロールの貼り付け方が分からない訳ではないですよねぇ。
EXCELと表現したのがマズかった。「ワークシートに貼り付ける」です。
あなたが "Button1"というボタンを貼り付けたのと同じワークシートにです。

Simple MAPIでのメール送信は、IEの[インターネットのプロパティ]→[プログラム]→
[電子メール]で指定されたメールソフトが使用されます。Becky!に限った話ではなく、
Outlook Express等でも可能な話なので、これ以上の質問は適切な掲示板でどうぞ。

Windows98SE + Excel2000 (VisualBasic開発環境無し) の環境で検証したところ、
「コントロールを貼り付ける方法」で送信に成功したことを報告しておきます。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.84