MailItem.HTMLBodyエイチティエムエルボディ プロパティ

本ページには広告が含まれています。

メールのHTML形式の本文を表す文字列型の値を取得または設定します。

HTML形式のメールを作成するにはMailItem.BodyFormat プロパティを olFormatHTMLに設定します。

構文
  1. String = MailItem.HTMLBody
  2. MailItem.HTMLBody = String
引数
戻り値
メールのHTML形式の本文を表す文字列型(String)

MailItem オブジェクトを返すメソッド・プロパティ

Items.Item メソッド
Items オブジェクトからItemオブジェクトを返します。
Application.CreateItem メソッド
新しいOutlookのアイテムを表すオブジェクトを作成します。

HTMLメールの作り方

DOCTYPE宣言

まずはDOCTYPE宣言でHTMLメールのベースを作ります。

DOCTYPEは"XHTML 1.0"または"HTML 4.01"の2種類がありますが、XHTMLは廃止されたのでHTML 4.01を使用します。

HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "https://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
	<meta name="viewport" content="target-densitydpi=device-dpi,width=device-width,maximum-scale=1.0,user-scalable=yes">
	<meta http-equiv="Content-Language" content="ja">
	<meta charset="shift_jis">
	<title></title>
</head>
<body>
</body>
</html>

マークアップ

次にメールの中身を作成していきます。HTMLメールは基本的にテーブルレイアウトで作成していきます。bodyタグ直下にtableタグを記述し幅は600pxにします。この値を大きくしすぎるとスクロールが必要になり見づらくなるためです。

HTML
<body>
	<table width="600px"></table>
</body>
よく使うHTMLタグ
<table>
テーブルを作成する際に使用します。子要素にtr、tdタグを使用することで構造を作ります。
  • width
  • border
  • cellpadding
  • cellspacing
  • align
  • id
  • style
<tr>
テーブルの1行を表します。子要素にtdタグを指定できます。
  • style
<td>
表示するデータを記述します。
  • style
<p>
文章を記述する際に使います。
<img>
画像を表示する際に使用します。src属性に画像のパス(httpから始まるフルパス)。alt属性は画像が表示できなかったときに表示されるテキスト。
  • src
  • alt
  • width
  • height
<a>
リンクを作成する際に使用します。imgタグの入れ子にすることで画像にリンクを設定することもできます。
  • href
  • target
<br>
改行する際に使用します。

スタイリング

メールの中身をマークアップした後は、CSSを使いスタイリングしていきます。ウェブ開発の場合外部から読み込むのが一般的ですが、HTMLメールではCSSの外部読み込みをサポートしていません。そのため「インライン形式」または「埋め込み形式」でスタイリングしていきます。body直下のtableタグでは、cellpadding、cellspacing、borderの値は0にします。

インライン形式
各HTMLタグ内にCSSを直接指定する形式。
埋め込み形式
headタグ内にCSSをまとめて記述する形式。
よく使うスタイル
cellpadding
テーブルのセル内の余白を指定します。HTMLメールの場合0を指定します。tableタグで使えます。
cellspacing
テーブルのセル同士の間隔を指定します。HTMLメールの場合0を指定します。tableタグで使えます。
border
テーブルの枠線の太さを指定します。HTMLメールの場合0を指定します。
style
各タグ内でスタイルの指定を行うことができます。
  • margin
  • padding
  • background-color
  • color
  • font-family
  • font-size
  • font-weight
  • text-align
  • border-radius
  • line-height
  • background
  • display
  • text-decoration
  • box-sizing
font-size
フォントの大きさを指定します。style属性で使えます。
font-weight
文字の太さを指定します。style属性で使えます。
color
文字色を指定します。style属性で使えます。

テンプレート

HTMLメールに最低限必要なスタイルを適用すると以下のようになります。

HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "https://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
	<meta name="viewport" content="target-densitydpi=device-dpi,width=device-width,maximum-scale=1.0,user-scalable=yes">
	<meta http-equiv="Content-Language" content="ja">
	<meta charset="shift_jis">
	<title></title>
</head>
<body>
	<table border="0" cellpadding="0" cellspacing="0" width="600px"></table>
</body>
</html>

レイアウト

セル結合のrowspanやcolspanは使わず、tableダクを入れ子にすることでレイアウトを作成していきます。

画像
文章1 文章2

画像の下に2カラムで文章を入れていく場合は、以下のように記述します。

UWSC
<body>
<table border="0" cellpadding="0" cellspacing="0" width="600px">
	<tr>
		<td><img src="○○○.jpg" alt="○○○"></td>
	</tr>
	<tr>
		<table border="0" cellpadding="0" cellspacing="0" width="600px">
			<tr>
				<td>文章1</td>
				<td>文章2</td>
			</tr>
		</table>
	</tr>
</table>
</body>

プログラム実行例

指定期間のメール情報を取得(Outlook)

UWSC
使用関数

HTMLメールを送信(Outlook)

HTMLメールの本文は長くなるので、TEXTBLOCKで定義して代入しています。

UWSC
使用関数
解説

参考文献

  1. MailItem.HTMLBody プロパティ (Outlook) | Microsoft Learn
  2. HTMLメールはどうやって作成するの?基本と特徴を徹底解説!【保存版】
  3. 画像の横幅によってHTMLメールの表示が崩れる場合|かんばらあい

関連記事

MailItem オブジェクト
メールメッセージを表します。
Items.Restrict メソッド (Outlook)
Items コレクションにフィルタを適用し、フィルタに一致する元のすべてのアイテムを含む新しいItems コレクションを返します。
MailItem.Attachments プロパティ (Outlook)
メールに添付されているすべての添付ファイルを表すOutlook.HTMLBodyを返します。
MailItem.BodyFormat プロパティ (Outlook)
メール本文の形式を表すOlBodyFormatクラスの定数を取得または設定します。
MailItem.Parent プロパティ (Outlook)
指定したオブジェクトの親オブジェクトを返します。
MailItem.ReceivedTime プロパティ (Outlook)
アイテムを受信した日付と時刻を示す日付型(Date)の値を取得します。
MailItem.SenderEmailAddress プロパティ (Outlook)
Outlookアイテムの送信者の電子メールアドレスを表す文字列(String)を返します。
MailItem.To プロパティ (Outlook)
Outlook アイテムの宛先の受信者の表示名一覧を表す、セミコロン(;)で区切られた文字列型(String) の一覧を設定します。
CDO.From プロパティ
メッセージの差出人(From)を指定します。
Account オブジェクト
Accountオブジェクトは、現在のプロファイルに定義されているアカウントを表します。