Word VBA質問箱 IV

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

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


32 / 45 ページ ←次へ | 前へ→

【279】Re:Word文書でスタイルをチェックするマクロ
回答  H. C. Shinopy  - 05/4/6(水) 20:55 -

引用なし
パスワード
   まずは、マイクロソフト社の下記ページを参考にしてみて下さい。

「Word 2002 のスタイル設定で使用するマクロを作成する −
さまざまな書式が設定された複数のWord文書を扱うことに
うんざりしたことはありませんか。
ここでは、Word文書のスタイルの管理に役立つ3つのマクロの作成方法に
ついて説明します。」

http://office.microsoft.com/ja-jp/assistance/HA010429641041.aspx

ここのページにあるマクロ
「ListStyles()」・「ChangeDocumentStyles()」で
手間が軽減できるでは?
・ツリー全体表示

【278】Word文書でスタイルをチェックするマクロ
質問  ZOO  - 05/4/6(水) 13:52 -

引用なし
パスワード
   お世話になっております。

アウトライン表示で、右側にスタイルを表示させることが出来ますが、

例えば・・・・

見出し1 
というスタイルしか使用してはいけない文書があった場合、
アウトライン表示で、見出し1 以外のスタイルが存在すると、
その該当する行の色が変わるとかして、一目でわかる様なことがしたいのですが、
可能なのでしょうか?

検索機能で、スタイルを検索したのを自動マクロで記憶させると以下の様になりますが、
違う文書で実行しようとすると、まったくなクロが動きません。

Sub Macro1()

  Selection.Find.ClearFormatting
  Selection.Find.Style = ActiveDocument.Styles("見出し 1")
  Selection.Find.ParagraphFormat.Borders.Shadow = False
  With Selection.Find
    .Text = ""
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindContinue
    .Format = True
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = False
    .MatchFuzzy = True
  End With
  
End Sub


どの様に書けばいいでしょうか。

何卒よろしくお願いします。
・ツリー全体表示

【277】Re:マクロの自動実行の方法
お礼  ぽっぽ  - 05/4/6(水) 12:42 -

引用なし
パスワード
   さぼさぼさん、こんにちは。

Subの名前をAutoOpenに変えてみたところ、
思うような動作になりました!

ありがとうございましたm(_ _)m
・ツリー全体表示

【276】Re:マクロの自動実行の方法
回答  さぼさぼ  - 05/4/6(水) 10:48 -

引用なし
パスワード
   ▼ぽっぽ さん:
AutoOpenでやってみて下さい。
AutoExecでは文章がロードされる前に実行されてしまいますので
上手くいかないのだと思います。

>はじめまして。ぽっぽです。
>
>Accessデータベースのテーブルから、
>Wordに差し込み印刷したいと思っています。
>Accessとの連結はうまくいき、
>Word側で差し込み印刷ヘルパーより手動で[差し込み]を実行すると、
>正常に動作します。
>
>この動作を、AccessからWordを呼び出して開いた際に、
>自動的に差し込まれるようにしたいです。
>
>その動作をマクロに記録し、
>それをそのまま利用しているのですが、
>Wordファイルを開いた際にマクロが自動実行されません。
>
>マクロ名が間違っていますでしょうか。
>(他のサイトでAuto_Execというのがあり試しましたがダメでした)
>自動実行のための設定が足りないのでしょうか。
>
・ツリー全体表示

【275】Re:全角、半角
お礼  ほし  - 05/4/6(水) 1:08 -

引用なし
パスワード
   本当にありがとうございます!サイトまで教えていただいて、ほんと親切で感動しました。まだ実行していませんが、やってみます!またなにかあったらよろしくお願いしますm(__)mほんと感謝です!
・ツリー全体表示

【274】マクロの自動実行の方法
質問  ぽっぽ  - 05/4/5(火) 22:20 -

引用なし
パスワード
   はじめまして。ぽっぽです。

Accessデータベースのテーブルから、
Wordに差し込み印刷したいと思っています。
Accessとの連結はうまくいき、
Word側で差し込み印刷ヘルパーより手動で[差し込み]を実行すると、
正常に動作します。

この動作を、AccessからWordを呼び出して開いた際に、
自動的に差し込まれるようにしたいです。

その動作をマクロに記録し、
それをそのまま利用しているのですが、
Wordファイルを開いた際にマクロが自動実行されません。

マクロ名が間違っていますでしょうか。
(他のサイトでAuto_Execというのがあり試しましたがダメでした)
自動実行のための設定が足りないのでしょうか。

WordVBAにつきましては全くの初心者で、
つまらない質問ですが、
何卒、ご教授のほど、よろしくお願いしますm(_ _)m


Sub AutoExec()
'
' AutoExec Macro
' 記録日 2005/04/05 記録者 Poppo'

  Application.WindowState = wdWindowStateNormal
  With ActiveDocument.MailMerge
    .Destination = wdSendToNewDocument
    .MailAsAttachment = False
    .MailAddressFieldName = ""
    .MailSubject = ""
    .SuppressBlankLines = True
    With .DataSource
      .FirstRecord = wdDefaultFirstRecord
      .LastRecord = wdDefaultLastRecord
    End With
    .Execute Pause:=True
  End With
  
End Sub
・ツリー全体表示

【273】Re:全角、半角
発言  名乗るほどのものでは  - 05/4/4(月) 17:04 -

引用なし
パスワード
   失礼、追記。
http://www.diatec.co.jp/support/wxp-101ps2setup.html
を見たらいいかもしれません。
・ツリー全体表示

【272】Re:全角、半角
回答  名乗るほどのものでは  - 05/4/4(月) 17:01 -

引用なし
パスワード
   遅くなり申し訳ありません。
自己解決されたかもしれませんが、
なんのひょうしでか、
日本語キーボードだったキーボード配列の設定が、
英語キーボードに切り替わったのではないかと思います。
普通は、Windowsが立ち上がる前の、真っ暗な画面で、
設定できるのですが、パソコンの種類等がわかりませんので、
「英語キーボード」とか使って、適当にググッてみてください。
答えにならずに申し訳ない。

▼ほし さん:
>ほんとだ!昔みたいに、一発で変換することができました!!ありがとうございます!あと、よくがあって申し訳ないんですが、Altキーを押さずにするようにはできないんですか?ほんとすいませんが、どうかお願いします。
・ツリー全体表示

【271】Re:全角、半角
発言  ほし  - 05/3/31(木) 23:32 -

引用なし
パスワード
   ほんとだ!昔みたいに、一発で変換することができました!!ありがとうございます!あと、よくがあって申し訳ないんですが、Altキーを押さずにするようにはできないんですか?ほんとすいませんが、どうかお願いします。
・ツリー全体表示

【270】Re:レイアウト枠の検索
発言  名乗るほどのものでは  - 05/3/31(木) 16:05 -

引用なし
パスワード
   こんな感じかなぁ、と思ったけど、
私の環境では、失敗でした。

Sub test()

Dim setObject As Object
Dim tmpText As String

For Each myFrame In ActiveDocument.Frames
  myFrame.Select
  Set setObject = Selection
  tmpText = setObject.Text
  Selection.MoveUp
  Selection.Text = tmpText
Next myFrame

End Sub

レイアウト枠の意味がまだよくわかっていないので、
また、思いついたら回答させて頂きます。

▼timtamlover さん:
>説明不足ですみませんでした。
>やりたい作業は、
>1. レイアウト枠を探す
>2. レイアウト枠がテキストボックスを含んでいるかチェックする
>3. テキストボックスがある場合、テキストボックス内の文字列を
>  レイアウト枠の外(枠のすぐ上)にコピー&ペーストする
>ここまで終わったら、1.に戻って作業を繰り返す。
>ということなんです。
>
>2.や3.まで含めてマクロ化できれば、さらにうれしいのですが、
>今のところ1.のマクロも作成できずにつまづいている状況です。
>
>「レイアウト枠を次から次へと検索する」というのでは、
>伝わらないですよね。。。すみません。
>
>「カーソルのある位置以降にあるレイアウト枠を検索する」
>ということになるのでしょうか。
>
>よろしくお願いします。
・ツリー全体表示

【269】Re:レイアウト枠の検索
質問  timtamlover  - 05/3/31(木) 9:12 -

引用なし
パスワード
   説明不足ですみませんでした。
やりたい作業は、
1. レイアウト枠を探す
2. レイアウト枠がテキストボックスを含んでいるかチェックする
3. テキストボックスがある場合、テキストボックス内の文字列を
  レイアウト枠の外(枠のすぐ上)にコピー&ペーストする
ここまで終わったら、1.に戻って作業を繰り返す。
ということなんです。

2.や3.まで含めてマクロ化できれば、さらにうれしいのですが、
今のところ1.のマクロも作成できずにつまづいている状況です。

「レイアウト枠を次から次へと検索する」というのでは、
伝わらないですよね。。。すみません。

「カーソルのある位置以降にあるレイアウト枠を検索する」
ということになるのでしょうか。

よろしくお願いします。
・ツリー全体表示

【268】Re:レイアウト枠の検索
回答  名乗るほどのものでは  - 05/3/30(水) 16:39 -

引用なし
パスワード
   Sub test()
For Each myFrame In ActiveDocument.Frames
  myFrame.Select
Next myFrame
End Sub

こんな感じで次々には、選択はしていますが、
そもそもレイアウト枠は同時に複数選択できるのでしょうか?
やりたい作業をもう少し細かく言って頂ければ、
もう少しお力になれるかもしれません。

▼timtamlover さん:
>レイアウト枠を検索したくてVBEのヘルプを探したら、
>↓のようなものを見つけました。
>
>ですが、このままだとドキュメント内の一番最初の
>レイアウト枠しか探せないみたいなんです。
>次から次へと検索する方法をご存知でしたら、教えて
>いただけないでしょうか。よろしくお願いします。
>
>Sub Macro1()
>With ActiveDocument.Content.Find
>  .Text = ""
>  .Frame.TextWrap = False
>  .Execute Forward:=True, Wrap:=wdFindContinue, Format:=True
>  If .Found = True Then StatusBar = "レイアウト枠がありました。"
>  .Parent.Select
>End With
>End Sub
・ツリー全体表示

【267】Re:全角、半角
回答  名乗るほどのものでは  - 05/3/30(水) 16:24 -

引用なし
パスワード
   altを押しながら押してみてください。
いくつかのケースが考えられるので、答えにならないかもしれませんが。

▼ほし さん:
>エスケープキーの横の半角、全角キーで昔は、ひらがな、英語入力の変換ができていたのに、今そこを押すと、‘というのが出てくるんですが、どうやったらもどりますか?
・ツリー全体表示

【266】全角、半角
質問  ほし  - 05/3/29(火) 16:30 -

引用なし
パスワード
   エスケープキーの横の半角、全角キーで昔は、ひらがな、英語入力の変換ができていたのに、今そこを押すと、‘というのが出てくるんですが、どうやったらもどりますか?
・ツリー全体表示

【265】レイアウト枠の検索
質問  timtamlover  - 05/3/25(金) 9:39 -

引用なし
パスワード
   レイアウト枠を検索したくてVBEのヘルプを探したら、
↓のようなものを見つけました。

ですが、このままだとドキュメント内の一番最初の
レイアウト枠しか探せないみたいなんです。
次から次へと検索する方法をご存知でしたら、教えて
いただけないでしょうか。よろしくお願いします。

Sub Macro1()
With ActiveDocument.Content.Find
  .Text = ""
  .Frame.TextWrap = False
  .Execute Forward:=True, Wrap:=wdFindContinue, Format:=True
  If .Found = True Then StatusBar = "レイアウト枠がありました。"
  .Parent.Select
End With
End Sub
・ツリー全体表示

【264】Re:スタイルと文字列の取得
回答  ABR  - 05/3/16(水) 17:19 -

引用なし
パスワード
   すみません、自己解決しました。
・ツリー全体表示

【263】スタイルと文字列の取得
質問  ABR  - 05/3/16(水) 13:21 -

引用なし
パスワード
   WORD文書内で特定のスタイルが設定された部分(文字列)を
取得する方法があると聞いたのですがご存知の方はいらっしゃいますでしょうか。

StylesプロパティやStyleプロパティの配下には
それらしきものは見当たらなかったのですが。

よろしくお願い致します。
・ツリー全体表示

【262】Re:Word文書の自動印刷
お礼  spider  - 05/3/15(火) 11:13 -

引用なし
パスワード
   りゅうしさん

どうもありがとうございました!
222番に気がつかなかったです・・・。

いまいち「?」ですが、まずは
やってみます!!!!!
・ツリー全体表示

【261】Re:改行キーの削除
お礼  ルーキー  - 05/3/13(日) 16:41 -

引用なし
パスワード
   早々にありがとうございました。
無事に解決しました。
検索・置換でできるはずとは思っていたのですが、こんな所にキーがあるとはわかりませんでした。
・ツリー全体表示

【260】Re:改行キーの削除
回答  名乗るほどのものでは  - 05/3/13(日) 13:59 -

引用なし
パスワード
   VBAでやるなら、

Sub tekitou()
  With Selection.Find
   .Text = Chr(13)
   .Replacement.Text = ""
   .Execute Replace:=wdReplaceAll
  End With
End Sub

こんなところでは?

Wordの検索で普通にやるなら、
検索と置換から、あいまい検索のチェックを外して、
一番下の真ん中の特殊文字ボタンをクリック、
そこの中から段落記号を選んで、
それを検索対象に、置換後の文字列には何も入力せずに、
全て置換を実行。

こんなところでしょうか。

▼ルーキー さん:
>初めて投稿します。ここ(VBA質問箱)で適当なのかわかりませんが、ご指導願います。
>
>メールやテキストファイルの文章をワードにコピーしたとき、中途半端に改行されてしまいます。
>とりあえずすべての改行キーを削除してしまいたいのです。
>
>よろしくお願いします。
・ツリー全体表示

32 / 45 ページ ←次へ | 前へ→
ページ:  ┃  記事番号:
207512
(SS)C-BOARD v3.8 is Free