Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


64 / 13128 ツリー ←次へ | 前へ→

【79578】outlookメールにセル貼り付け excel2016 18/1/16(火) 13:09 質問[未読]
【79580】Re:outlookメールにセル貼り付け γ 18/1/18(木) 6:35 回答[未読]
【79581】Re:outlookメールにセル貼り付け γ 18/1/18(木) 6:37 発言[未読]

【79578】outlookメールにセル貼り付け
質問  excel2016  - 18/1/16(火) 13:09 -

引用なし
パスワード
   メール本文
------------------

文章1

表(貼り付け)

文章2

という単純な文章を作りたいのですがなかなか上手く行きません。


下記のソースを利用すると

Sub macro()
  Dim Ap As Object
  Dim M As Object
  'Excelで選択しているものをコピー(図でも表でもOKです)
  Selection.Copy
  Set Ap = CreateObject("Outlook.Application")
  Set M = Ap.CreateItem(0)
    M.BodyFormat = 3 'リッチテキスト形式
    M.Body = "テストです" 'メールの本文
    M.To = "test @ test" 'アドレス
    M.Subject = "テスト" '件名
    M.Display '画面を表示
    With Ap.ActiveInspector
      '貼り付け
      .WordEditor.Windows(1).Selection.Paste
    End With
End Sub
---------------------------------------------------
メール本文
------------------
表(貼り付け)


文章


となってしまいます。


ーーーーーーーーーーーーーーーーー

Dim str1 As String
Dim str2 As String
Dim str3 As String

と変数を用意して

xxx.body = str1 & str2 & str3


としようとしたのですが変数に
Range(A1:B9).text
のような複数セルの値が入らず困っています。

どなたかご教授願えないでしょうか。

【79580】Re:outlookメールにセル貼り付け
回答  γ  - 18/1/18(木) 6:35 -

引用なし
パスワード
   それはWordのマクロですから、Wordにもマクロ自動記録が利用可能ですから、
マクロ記録などが参考になるはずです。トライしてみて下さい。

(1)
M.body = "テストです" 'メールの本文
を活かすなら、分の最後までジャンプしてから貼り付けることが可能。
    .WordEditor.Windows(1).Selection.Move Unit:=wdStory
    .WordEditor.Windows(1).Selection.Paste

(2)
M.body = "テストです"
とせずに、まとめて文字列等をセットすることもできるでしょう。
    .WordEditor.Windows(1).Selection.TypeText Text:="テストです"
    .WordEditor.Windows(1).Selection.TypeParagraph
    .WordEditor.Windows(1).Selection.Paste

(3)逐一.TypeParagraphせずに、
    .WordEditor.Windows(1).Selection.TypeText Text:="456" & vbLf
  という書き方も可能ですね。

なお、上記は、With句を使って整理することができますので、工夫してください。

# 結果のコードだけを書かないのは、内容理解が重要と考えているからです。
# ひとつひとつの部品を理解するようにしてください。

【79581】Re:outlookメールにセル貼り付け
発言  γ  - 18/1/18(木) 6:37 -

引用なし
パスワード
   補足:
wdStoryは定数です。
Wordの Object Libraryを参照設定してください。

64 / 13128 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free