• 締切済み

Windows Wordについての質問です

Wordで4種類ほどの名前を入れる表を作りたいのですが、一個ずつ名前を打つのは面倒なのでExcelのようにマクロを使いたいです。 理想としては、ショートカットキーを作成して該当のマスにカーソルを合わせ、そこでショートカットキーを押して入力出来るようにしたいのですが、どのようにしたら良いですか? よろしくお願いいたします。

みんなの回答

  • HohoPapa
  • ベストアンサー率65% (454/692)
回答No.3

ショートカットとの求めが気になったので補足します。 F1,F2,F3ではなく、例えば Ctrl+A,Ctrl+S,Ctrl+D に割り当てたい場合は 以下です。 Private Sub Document_Open()    With Application      .CustomizationContext = NormalTemplate   .KeyBindings.Add KeyCode:=.BuildKeyCode(wdKeyControl, wdKeyA), _   KeyCategory:=wdKeyCategoryCommand, _   Command:="PutName1"     .CustomizationContext = NormalTemplate   .KeyBindings.Add KeyCode:=.BuildKeyCode(wdKeyControl, wdKeyS), _   KeyCategory:=wdKeyCategoryCommand, _   Command:="PutName2"     .CustomizationContext = NormalTemplate   .KeyBindings.Add KeyCode:=.BuildKeyCode(wdKeyControl, wdKeyD), _   KeyCategory:=wdKeyCategoryCommand, _   Command:="PutName3"    End With End Sub

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

>Excelのようにマクロを使いたいです。 ワードのVBAは書籍も(1995年来)3-4冊しか出版されておらず、現在で入手できるのは1冊程度しかない。WEB記事以外ではそれほど、ワードVBAは独習しにくい分野です。 こんな質問コーナーに1問質問して回答でやれると思うのは安易すぎる。 たとえば、システム会社に勤めていて、依頼案件の中に、一部でワードのVBAでも使わざるを得なくて、研究した人でも、このコーナーを見ておれば、回答が出るかもしれないが。ここは専門家・プロにVBAコードを作ってくれと依頼するコーナーではないはず。 それに質問者は、WEB照会でもしてみたのかな、していないようだ。 ーー そこで、1つの提案として、エクセルの入力援助の諸機能を使って(多分ワードより豊富だろうと思う)、表を作り、ワードへ移すことを考えたらどうだろう。 数表程度ならVBAでやらずとも、手作業でも大したことはないと思うが。 ーー その線で、WEB照会の記事を使わせてもらって、修正してみた。 参考 http://www.shoeisha.com/book/hp/pc/office/Word/files/text6.html テストデータ エクセルで、Sheet1のA1:C5に 名前 住所 年齢 木村三郎 奈良市 34 大野 茂雄 神戸市 45 徳川 勇 和歌山市 27 近藤 茂子 亀山市 29 とテストデータを作る。 ーー その標準モジュールに Sub MakeWordApp2() ' Wordオブジェクトのインスタンスを作成 Set objWord = CreateObject("Word.Application") With objWord ' Wordを表示 .Visible = True ' ウィンドウを最大表示 .WindowState = wdWindowStateMaximize ' Reprot.docを開く .Documents.Open "C:\Users\XXX\Documents\住所録1.docx" 'Reprot.docをオブジェクト変数に代入 Set objWordDoc = .ActiveDocument '文書にテキストを挿入 With .Selection .Move Count:=objWordDoc.Characters.Count .InsertParagraphAfter .InsertAfter "XX同好会名簿" .InsertParagraphAfter .MoveRight End With End With MsgBox "AAA" '--- ' セルのデータをコピSheet1").Range("A1:C10").Copy Worksheets("sheet1").Range("A1:C10").Copy ' Wordに貼り付け With objWord.Selection .Paste .TypeParagraph End With MsgBox "BBB" ' 文書を保存して閉じる objWordDoc.Close SaveChanges:=True ' Wordを終了する objWord.Quit ' オブジェクト変数をクリアする Set objWord = Nothing Set objWordDoc = Nothing End Sub (注)ファイルのPATHの部分は自分の場合に合わせて修正のこと。 シートの表のデータのコピー範囲も修正のこと。 ーー 実行すると、ワードの文書に XX同好会名簿 名前 住所 年齢 木村三郎 奈良市 34 大野 茂雄 神戸市 45 徳川 勇 和歌山市 27 近藤 茂子 亀山市 29 のような表ができる。 ーー このほかの方法として、エクセル表から、ワードの表(事前に作っておいて)にデータを移すコードもWEB照会すれば見つかるだろう。 == こういう質問をする(WordVBAで行うことの)背景・ニーズを補足して置いたらどうだろう。

全文を見る
すると、全ての回答が全文表示されます。
  • HohoPapa
  • ベストアンサー率65% (454/692)
回答No.1

F1,F2,F3を押すと、それぞれ、 カーソルの位置に指定した文字列が挿入される。 ということであれば、次のようなコードで実現できると思います。 (個人的には、単語登録でも十分な気がしますが) '====ThisDocumentに配置 Private Sub Document_Open()    With Application      .CustomizationContext = NormalTemplate   .KeyBindings.Add KeyCode:=.BuildKeyCode(wdKeyF1), _   KeyCategory:=wdKeyCategoryCommand, _   Command:="PutName1"     .CustomizationContext = NormalTemplate   .KeyBindings.Add KeyCode:=.BuildKeyCode(wdKeyF2), _   KeyCategory:=wdKeyCategoryCommand, _   Command:="PutName2"     .CustomizationContext = NormalTemplate   .KeyBindings.Add KeyCode:=.BuildKeyCode(wdKeyF3), _   KeyCategory:=wdKeyCategoryCommand, _   Command:="PutName3"    End With End Sub '====標準モジュールに配置 Sub PutName1()  Selection.TypeText Text:="鈴木一郎" End Sub Sub PutName2()  Selection.TypeText Text:="山田次郎" End Sub Sub PutName3()  Selection.TypeText Text:="田中三郎" End Sub

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • wordの機能について質問。

    ワードで脚本を書いているのですが、いちいち お祖父さん「~だった・・・。」 などと、人物の名前を書くのが面倒なのですが、ショートカットキーなどで、いろいろな人物の名前を割り当てることは可能なのでしょうか?

  • ワード2007 データフォームによる表入力

    住所録(名前・〒・住所・TEL)等表を作成する場合Word2003では1行4列の表に見出しを入力して 「データベース」 ツールバーの「データフォーム」を使用すれば入力が容易な機能がありますが、Word2007ではこの機能が見あたりません。EXCEL2003でも同様に「データ」「フォーム」で同じような機能がありますが、EXCEL2007では見あたりません。2007にこの様な機能があるのでしょうか? 教えてください。宜しくお願いいたします。

  • エクセルのデータをワードの表に貼り付ける

    こんばんわ。エクセルに入力したデータ(1から100など4種類のデータ)をワードの表(表が100個あり、それぞれの表に4種類のデータを貼り付ける)に自動的に貼り付けたいと思います。リンク貼り付け、差込印刷を試してみましたが、作業性が良いとわ思いません。マクロなどでできれば良いと思いますが、私マクロがあまり詳しくないため、わかりません。教えて頂けないでしょうか。宜しくお願いします。

  • ワード2007の表への文字入力

    ワ-ドに挿入した表の一マスに一文字入力し、自動的に 次のマスにカーソルが移動するように設定したいのですが、 教えてください。 そのまま、入力すると2文字以上入力されてしまいます。

  • ワードで表をつくったてから、あとで一番上の行に説明文を書きたい

    ワード2003です。 1ページ目の頭から表を作成しました。 あとで、この表の説明を表外の一番上の行に入れようと思ったんですが、いつも、やり方がわからず、一度表を全部切り取って、カーソルをもとに戻してエンターを二度ほど押してから、貼り付けて、それから、 改行のところに、説明を書いています。 ショートカットキーをつかっているので、早いのは早いのですが、もっと簡単にやる方法ってありますか? もちろん、表を作る前に1,2行あけておけば一番いいのですが、、

  • ワードの表への入力について

    お世話になります。 ワードに表があり、そこに入力していくのですが、 原稿用紙のように1マスに1文字ずつ入れていかなくてはいけません。 「文字」と入力すれば1マスに2文字入りますよね。 これを簡単に1マスに1文字ずつ入れる方法はあるのでしょうか。 簡単な方法があれば是非教えて頂きたいと思います。 よろしくお願いいたします。

  • Excel2007、Word2007で

    Excel2007で作成した表をWord2007へ画像コピーで貼り付けようと思っています。 まず、Excel2007ですが、縦横の罫線を消してバックを真っ白にしたいのですが、方法を教えてください。 次にExcel2007で作成した表をWord2007へ画像コピーする方法を教えてください。 よろしくお願いします。

  • wordについて

    word2007で、wordを開くとカーソルの横に名前は判らないのですが、おたまじゃくしの様なのがあります、表を作っても桝ごとにもつきます、これを出ない様にする設定を教えて下さい。

  • ExcelのグラフをWordへ

    卒論でかなり追い詰められてます。 マクロの記録でやろうと思ったのですが、Excel部分のやったことしかソースしか残されないし、Wordのマクロの記録で作られたソースをうまく使いこなせません。 こんなやりたいのです、ある程度ソースをかいていただけませんでしょうか。 (1)現在開いているWord(aaa.doc)に表(縦3×横2)を挿入 (2)現在開いているExcel(bbb.xls)の"graphs"シートの"グラフ 1"をコピー (3)(1)の表のcells(1,1)に該当するところへ拡張メタファイル形式で貼り付け (4)(3)で貼り付けたグラフに図表番号(Fig 1.1.1 あああ)とつける 現在Excel(bbb.xls)の標準モジュール部分で書いてます。

  • Word文書が保存できなくなった

    特定のWord文書ファイルを開いて、編集後、上書き保存も、名前を付けて保存もできなくなってしまいました。他のWord文書は大丈夫なので、該当のファイルだけの問題なのかなと思います。開いて表示や印刷は問題ありません。該当Wordファイルには図形、Excel表、Visioオブジェクトを数多く含んでいます。簡単に修復する方法はないでしょうか?

専門家に質問してみよう