Word VBAについて

このQ&Aのポイント
  • Word2003でVBAを学びながら、マクロの作成方法やフォントの変更方法について疑問があります。
  • VBAの知識が乏しいため、マクロの作成方法を研究しています。具体的には、フォントの変更方法について知りたいです。フォントの設定には「日本語用のフォント」と「英数字用のフォント」の2箇所があるようですが、これらの違いについても教えてください。
  • Word2003でVBAを学習中ですが、マクロの作成方法やフォントの変更方法について分からないことがあります。具体的には、フォントの設定に関してどの箇所を変更すれば良いのか、また「日本語用のフォント」と「英数字用のフォント」の違いについても教えていただきたいです。
回答を見る
  • ベストアンサー

Word VBAについて

Word2003の勉強をしています VBAについてお尋ねします VBAの知識が乏しいのでマクロを作ってみてそれが実際どういうように書かれているんだろうか?と思い[マクロ]→[マクロ]の編集画面からVBEを起動させています VBAでフォントを変更したいときはどっちを変更したらよいのでしょうか? なぜ「日本語用のフォント」と「英数字用のフォント」が設定されているらしきところが2箇所あるのでしょうか? これらは何がちがうのでしょうか? てっきり[書式]→[フォント]ダイアログの内容がすべて書かれているんだと思っていたんですが・・・違うのでしょうか? With Selection.Font .NameFarEast = "MS 明朝"   ←(日フォント? .NameAscii= "Century" ←(英フォント? .NameOther = "Century" ← (・・英フォント? .Name = "MS 明朝"       ←(・・日フォント?? 質問攻めですみません どなたか教えていただけると助かります どうぞよろしくお願いいたします

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

>[書式設定ツールバー]の[フォント名]でMS ゴシックを選択すると >上手くVBAにも組み込まれフォントを設定するマクロとして使えます 本当ですね。私も知りませんでした。 [フォント]ダイアログでのマクロ登録は今回が初めてだったので検証を していなかったのでこの違いに気が付きませんでした。 >.Name = "MS 明朝" これについてはフォントダイアログで開いたときの設定済みのフォント 名が表示されるようですね。 [書式設定]ツールバーやその他の方法でフォント名を指定してからなら、 ここにフォント名が表示されました。しかしこの記録マクロを変更して >.Name = "" にて実行された場合は、 [書式設定]ツールバーにはフォント名が表示 されず、その段落ではフォントの指定はできても[書式設定]ツールバー の[フォント名]にはマクロの実行でフォント名を指定しない以外は表示 されることは無かったので、やはり実行結果としてフォント指定を先に しておかないとならないもののようです。 私は[フォント]ダイアログなどでの[記録マクロ]をした場合は、余分な ものが多く表示されるので、よほどのことが無い限り、これを使わない 方法ととります。 フォントの変更ならば[フォント名]ボタンなどを使った[記録マクロ]を とりますし、それ以外でも単機能のボタンやショートカットキーを使用 した記録マクロをとるようにしています。このほうが余分な記録が残る ことが少ないので、マクロの変更が楽ですから。 ダイアログを開く場合は何が記録されるかを見るだけで、ダイアログの 内容を変更して記録することが少ないので、今回のような記録マクロの なぞに気が付くことがない回答になりました。 単純な変更をするマクロを作成するときは、ツールボタンなどを利用し 単機能での記録をとったほうが理解しやすいですよ。

momohuku
質問者

お礼

またまたご回答いただきまして、本当にありがとうございます はぁーああ!!そうだったんですね~、 .Name = "MS 明朝"は ダイアログを開いたときの設定済みフォントが正体だったんですね!! とてもすっきりしました~! 確かにフォントダイアログからマクロを記録すると余分な情報まで記録されて 私のような初心者にはVBAを分りにくくしてしまう大要因なのかもしれませんね。 助かりました!! ありがとうございました!

その他の回答 (1)

回答No.1

私も勉強中なので的確な回答でなくて悪いのですが。 日本語用フォント以外の指定は文字コードの違いですね。 >.NameAscii= "Century" ←(英フォント? 英数字 (文字コードが 0 (ゼロ) ~ 127 の文字) に使用するフォント >.NameOther = "Century" ← (・・英フォント? 英字(文字コードが 128 ~ 255 の文字)に使用するフォント 上記の設定の違いがあるので、2つあるようです。 >.NameFarEast = "MS 明朝"   ←(日フォント? これは東アジアのフォント名を指定するものらしいです。 >.Name = "MS 明朝"       ←(・・日フォント?? これは選択している文字への指定したいフォント名ですね。 日本語入力(スペースを入れると□の全角スペースが入る)状態で記録を すると"MS 明朝"になります。 直接入力(スペースを入れると・の半角スペースが入る)状態で記録を した場合"Century"になります。 マクロのヘルプを使用できる状態にして、それぞれについてのヘルプを 参照すると理解が早くなります。 それとWordの基本機能や動作をある程度理解していないと、質問にある >.Name = "MS 明朝" の意味もヘルプだけでは納得しにくいと思います。

momohuku
質問者

お礼

ご回答ありがとうございます。 早速、VBE上のヘルプ機能を使って調べてみますね なるほど、そういう違いがあったんですね~ 私のPCの設定?のせいでしょうか? 例えば、ひらがなの”あ”を[書式]→[フォント]から日本語用フォントを「MS ゴシック」と選択したマクロをVBAでみると .NameFarEast = "MS ゴシック"となり .Name = "MS 明朝" のままです もちろんこのマクロを使ってもフォントはMS ゴシックにはなりません .Name = "MS 明朝"→.Name = "MS ゴシック"と自分でなおす始末です ちなみに[書式設定ツールバー]の[フォント名]でMS ゴシックを選択すると上手くVBAにも組み込まれフォントを設定するマクロとして使えます すみません。 お礼のメールのところにこんなこと書いちゃいけませんね。 もう少し悶々と考えたいと思います(汗 本当にありがとうございました

関連するQ&A

  • Wordの書式設定

    word2002を使用しています。 ある文書を作業ウィンドウを使って書式の確認をしていたところ、 フォント欄に (英)MS Pゴシック (日)MS Pゴシック 12pt フォントの色:黒 (特殊)MS 明朝 という風に表示がされていました。 この(特殊)というのはどういう意味なのでしょうか? ちなみに白紙の文書に「あいうえお」と入力し、英数字用のフォントを日本語用と同じフォントに変更したら、(特殊)centuryと表示されました。 この(特殊)について、どういったものなのか教えてください。

  • Wordの英数字のフォント

    以前、質問者:ko-giさんからありましたが、質問内容 <大学のレポートをWordで作成しているのですが、印刷した時に、半角英数字(例えば、年代を表したりする18世紀、1629年等、外国人の人名表記)の部分がCenturyになってしまう。 印刷した時に普通に、他の日本語かな文章(MS明朝)と同じくするにはどうしたらよいのでしょうか。> 実際やってみましたが、確かにフォント名は(MS明朝)と表示されますが、実際印刷してみると、Centuryのままです。どうしたらよいでしょうか? また、[書式]-[フォント]の[英数字用フォント]は (日本語用と同じフォント)になってます。

  • word2007 フォントの保存について

    word2007を使用しています。 フォントは日本語「MS明朝」、英数字のフォント「Times New Roman」を使用しています。 通常、日本語で文書を打っていて、途中で英数字を入力したいときは、PCキーボードの「半角/全角」ボタンを押して、英数字モードにしてTimes New Romanフォントで英数字を入力しています。 しかし、日本語の文章中に英数字を挿入したい時に上記のように半角で英数字を挿入しようとすると半角のMS明朝になってしまいます。その時、画面上のフォントタブを見ると日本語は「MS明朝」になっていますが、英数字が「日本語用と同じフォント」になっています。ここをTimes New Romanに変更して、その変更を保存していますが、結局上記同様のことが起きます。 いかなる状況でも、日本語フォント「MS明朝」、英数字フォント「Times New Roman」を反映させたいのですが、どのように設定すればいいでしょうか?

  • word98のスタイルについて

    スタイルの設定で「標準」の「変更」「書式」「フォント」の日本語用フォントを「MS明朝」、英数字用フォントを「日本語と同じ」にしても半角数字の画面表示がセンチュリーのままなのですが、どうしてなのでしょうか。いろいろためしてもなおらないんです。 それとword98の「スタイル」について詳しく書いてあるホームページがあれば教えていただけませんでしょうか。宜しくお願いします。

  • 英数字用のフォントには。

    Word2000を使っています。 フォントダイアログボックスで英数字用のフォントを設定することが出来ますが、一般的?なもので、MS明朝・MSゴシック・Century・Times New Romansなどありますが、 このフォントだとこういう時に便利だという使い方はあるのでしょうか? 宜しくお願いします。

  • ワードのフォントをが変わらない!

    ワードで、喫茶店のメニューを作成しています。 ドリンクの名前、金額をただ順序良く打ち込んでいるだけですが、少しでもおしゃれに見せたいと思い、フォントだけを変えてみたいと思ったわけです。しかし、項目別のタイトルを英文字で打ち、好きなフォントを英数字フォントから選んでも(押しても)変わらないのです。それまで使っていたMS明朝に戻るのです。これはどうしてなのでしょうか?スムーズにフォントを変更しながら英文字も含めたメニュー作成したいのです。

  • ワードのアルファベットのフォント

    ワードを立ち上げて普通に日本語を入力すると、MS明朝のフォントになることが多いと思います。日本語入力中にアルファベットを入力すると、Centuryになる時とMS明朝になる時があります。 アルファベットをある特定のフォント(たとえばCentury)にするにはどうしたらいいのでしょうか?Centuryになる時とMS明朝になる時があるのはなぜでしょうか?

  • 英数字用のフォントが勝手に変わります。

    Word for mac 2011を使用しています。 日本語用フォントをMS明朝に、英数字用フォントをTimes New Romanに設定しているのですが、 かなキーを押して全角にすると英数字用のフォントが勝手に(日本語用と同じフォント)に変わってしまいます。 対処法はありますでしょうか。 よろしくお願いいたします。

  • フォントが変わりません!

    ワードでフォントをMS明朝から「Century」に切り替えても、文字を打ち込んだ瞬間にMS明朝に戻ってしまいCenturyで文字が打てません。 先に別のフォント(MS明朝など)で打ち込んでおいて反転表示させてフォントを変更してもやはりCenturyになりません。 なぜなのでしょうか。 色々と試してみたのですが他のフォントには変えることが出来ます。 しかしCenturyとTimes New Romanというフォントは使うことができません。 今まで使うことが出来ていたので理由がわかりません。 よろしくお願いします。

  • ワード2003 フォントの変更について

    ワード2003で、フォントの変更をしようとしていて、 英数字用のフォントを (日本語用と同じフォント)から Centuryに変えようとすると、既定値として設定しているにもかかわらず、次に文書を開いた時、(日本語用と同じフォント)の設定で開きます。 初期値に直そうと、normal.dotを削除して、立ち上げてみると、 今度は、他の設定(カーニングなど)が既定値として設定しても治りません。 他のパソコンはきちんと設定できます。 設定できないパソコンには、adobeのセットが入っています。 何か関係があって、設定変更できないのでしょうか? ご存知の方いらっしゃいましたら、教えていただけないでしょうか?