• ベストアンサー

EXCELで行を検索選択し印刷するマクロを組みたい

EXCELのマクロについて教えてください。 検索により選択した複数のセルを 行単位で印刷することはできるでしょうか? たとえば住所録を作ったとして どこかに「東京都」と入れ ボタンを押すと 東京都が含まれる複数の行を 1枚で印刷できるようにしたいです。 なお、検索については特定の列のみを 対象にします。 引っ越し前の住所が別の列に書かれていても これは無視するという感じです。 マクロについてはまったくの初心者です。 よろしくお願いいたします。

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

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.3

>日付を指定してオートフィルタにかけようとすると何も選択されません。 この場合は、ちょっと微妙な問題になって来ます。 セルの表示と内容(実データ)に違いがあると検索されません。 日付と言うのはシリアル値で管理されているので、この部分を把握していないと正しく動作しない可能性があります。 データ列は日付形式のデータが入って居るのが基本です。 A1に、1/1 と表示されて居る場合、 2008/1/1 2007/1/1   : 1900/1/1 など様々な値が考えられますから、フィルタで一致データを探すには、西暦から正しく入れる必用があります。 2008/1/1 10:10 と時刻情報も付加されたデータなら、これも不一致の原因になります。 (2008/1/1 0:00 ならば 2008/1/1 で探せます。) 日付をyyyy/m/d など、暦年を4桁で入れる。 Criteria1:=Range("A1").Text とか Criteria1:=Format(Range("A1").Text,"m/d") に変更してみる。 で、いかがでしょうか?

niftynejp
質問者

お礼

ありがとうございました! Criteria1:=Range("A1").Text の方法により うまく操作できるようになりました。 一つだけ確認させてください。 この式を入れたことにより シートの保護ができなくなったのですが これはマクロを使うことにより よくあることなのでしょうか? 特に困っているわけではありませんが うっかり誰かに消されたりするかもしれないので もしできましたら マクロとシート保護の関係について お教えください。 ちなみにExcel2000を使っております。

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

その他の回答 (3)

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.4

>この式を入れたことによりシートの保護ができなくなったのですが マクロと保護が出来ない事とは関係ありません。 保護されたシートに対してマクロを実行すると、オートフィルタや保護されたセルの操作等はできなくなります。 それを回避するには、 Sub test() ActiveSheet.Unprotect '処理 ActiveSheet.Protect End Sub のように、処理前に保護の解除を行い、終了後に保護を設定する方法があります。

niftynejp
質問者

お礼

おかげさまで シートの保護もできるようになりました。 パスワードもマクロを使って 自動的に付けたりはずしたりすればいいのですね。 いろいろとありがとうございました。 またマクロで困ったときは質問させていただきます。 そのときはどうぞよろしくお願いいたします。

すると、全ての回答が全文表示されます。
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.2

>Criteria1:="東京" Criteria1:=Range("A1").Value のようにしてみて下さい。

niftynejp
質問者

補足

ありがとうございます。 おかげさまで、文字についてはうまくいきました。 ただ、日付を指定してオートフィルタにかけようとすると 何も選択されません。 何度も申し訳ありませんが 解決方法をよろしくお願いいたします。

すると、全ての回答が全文表示されます。
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

検索では無くてオートフィルタになると思います。 まずは記録マクロで行って見てください。

niftynejp
質問者

補足

オートフィルタのことを忘れていました。 ごめんなさい。 マクロを記録してみたところ Selection.AutoFilter Field:=2, Criteria1:="東京" となりました。 問題は Criteria1:="東京" の部分です。 "東京" を "A1" のように参照形式にしてもうまくいきません。 この部分をどうしたらよいのでしょう・・・ よろしくお願いいたします。

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

関連するQ&A