現在オフラインです。再接続するためにインターネットの接続を待っています

Excel 2007 のテキスト ボックスで使用するフォントの種類をマクロで変更できない

現象
Microsoft Office Excel 2007 で TextFrame オブジェクトを使用してフォントを変更する際、以前のバージョンの Excel と同じ方法で .TextFrame.Characters.Font.Name にフォント名を指定してもフォントの種類を変更できません。
原因
Excel 2007 では、テキスト ボックス内の文字列を表示するフォントの種類を [日本語用のフォント] と [英数字用のフォント] でそれぞれ指定することができます。TextFrame オブジェクトのプロパティが変更されたため、この問題が発生します。
回避策
マクロでフォントの種類を指定する場合、TextFrame オブジェクトに [日本語用のフォント] として明示する必要があります。日本語の表示フォントして MS P 明朝を使用する場合、REPRODUCE のコードを次のように編集します。

Sub Sample()         With Sheet1.Shapes.AddTextbox(msoTextOrientationVertical, 0, 0, 200, 200)                   .TextFrame2.TextRange.Characters.Text = "テスト"                   .TextFrame2.TextRange.Font.NameFarEast = "MS P明朝"         End WithEnd Sub
状況
マイクロソフトでは、この問題について現在調査中です。詳細については、わかりしだいこの資料に掲載する予定です。
詳細

問題の再現手順

  1. Excel 2007 を起動し、新しいブックを開きます。
  2. [開発] タブをクリックし、[コード] の [Visual Basic] をクリックします。または、Alt キーを押しながら F11 キーを押します。

    : リボンに [開発] タブを表示するには、Microsoft Office ボタンをクリックし、[Excel のオプション] をクリックします。次に、[基本設定] をクリックし、[[開発] タブをリボンに表示する] チェック ボックスをオンにして、[OK] をクリックします。
  3. Visual Basic Editor で [挿入] メニューの [標準モジュール] をクリックします。
  4. モジュール シートに次のサンプル コードを入力するか、貼り付けます。
    Sub Sample()       With Sheet1.Shapes.AddTextbox(msoTextOrientationVertical, 0, 0, 200, 200)                 .TextFrame.Characters.Text = "テスト"                 .TextFrame.Characters.Font.Name = "MS P明朝"       End With  End Sub
  5. マクロを実行します。

結果

フォントの種類は MS P ゴシックと表示され、マクロで指定した MS P 明朝には変更されません。
プロパティ

文書番号:945500 - 最終更新日: 09/20/2016 10:33:00 - リビジョン: 2.0

Microsoft Office Excel 2007

  • kbharmony kbcode kbexpertiseinter kbexpertisebeginner kbtshoot kbmacro KB945500
フィードバック