こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

EXCELでのメール作成

EXCELを利用したメール作成で困っております。どなたか教示ください。
環境
 OS:WinXP
 EXCEL:2003
 メール:Outlook

mailtoを使用して下記のようにセルに記載してメール画面を起動しようとしています。
=HYPERLINK("mailto:"&A1&"?cc="&A2&"&subject="&A3&"&body="&A4,"あああ")

A1・・・宛先のアドレス
A2・・・CCで出したいアドレス
A3・・・件名
A4・・・送りたい本文
本文例)
 XX様
 
 お世話になっております。
 ご注文頂いたXXです。
 下記日程で発送します。

 XX月xx日
 xx時着予定
  ・
  ・

ただ、EXCELの文字数制限(248文字?)により送信したい内容が本文に貼り付けられません。

送信したい内容には改行も含まれています。
なんとか貼り付ける方法はないでしょうか
また SendMailを使って直接送ってしまうという方法は避けたいと思っています


よろしくお願いいたします。

投稿日時 - 2013-01-27 19:01:55

QNo.7914102

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

HYPERLINK関数のmailtoですか。
使ったことがなかったので調べてみました。

まず本文の改行ですが、%0D%0Aにしたらうまくいきました。
でも字数制限はどうにもならないようで、他の方法を使うしかないようです。

ここでお聞きしたいのですが、質問者様のメールクライアントはOutlookとなっていますが、Excel2003を併用されているということは、Outlook2003でしょうか。
(というか、Outlook ExpressではなくMicrosoft OfficeのOutlookでしょうか。)
もしそうであれば、VBAを使うのがよいと思います。

以下例を示します。
質問文中のセルA1~A4はSheet1にあるとし、そのブックに
以下のようなプロシージャを作成しておきます。

Sub Create_Message_OL()
Dim mSheet
Dim oOl
Set mSheet = ThisWorkbook.Sheets("Sheet1")
Set oOl = CreateObject("Outlook.Application")
With oOl.CreateItem(0)
.To = mSheet.Range("A1")
.CC = mSheet.Range("A2")
.Subject = mSheet.Range("A3")
.Body = mSheet.Range("A4")
.Display
End With
End Sub

このプロシージャを動作させれば、Outlookの新しいメッセージが作成され、セルA1~A4の内容が所定の場所に入ります。

投稿日時 - 2013-02-05 15:28:56

あなたにオススメの質問