• ベストアンサー

「済」の行以外を印刷する方法

エクセルの初心者ですが、下記のようなデータについて 計画日   行事名 終了日 2003/10/10 ビデオ鑑賞 2003/10/20 2003/10/10 夕食会  2003/10/10 夕食会 2003/10/21 ・・・・・・ 終了日が入力されていない部分のみをマクロで印刷するようなことはできますか。 #マクロは「新しいマクロの記録」でしか作れません。 #上記のような内容は使う機会が多いので、自分用の定型として活用したい。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

A1:A12に終了日として 2003/10/1 --- 2003/10/4 2003/10/2 --- --- --- 2003/10/7 --- --- --- 2003/10/9 (---はブランク) があるとします。 B列に列挿入して、関数式 =IF(A1="","",COUNTA($A$1:A1)) といれ、下に複写します。 終了日データの入っている行に、上から、1、2,3,4、5と振られます。 C列に関数式 =OFFSET($A$1,MATCH(ROW(),$B$1:$B$12)-1,0) を入れてC2から4行複写します。 詰めてD1:D5に 2003/10/1 2003/10/4 2003/10/2 2003/10/7 2003/10/9 となります。 =OFFSET($A$1,MATCH(ROW(),$B$1:$B$12)-1,0)の最後の引数の0を1,2,3、とかに変える事で、計画日や行事名の列を詰めた部分に並べることが出来るので。 スペース行を省いて、終了日データのある行だけ詰めて 表示できます。 逆に終了日がブランクの行を集めるなら B1は =IF(A1<>"","",COUNTBLANK($A$1:A1)) と入れると良いです。ブランクの行だけに番号がつき それを頼りに、詰めて表示できます。  後はその部分を範囲指定して、印刷すれば良い。

s-holmes
質問者

お礼

回答ありがとうございました。 残念ながら、アドバイスを「完全」に理解するには、スキル不足で・・。 今後のための参考にさせていただきました。 (^^;

その他の回答 (1)

  • tomo0524
  • ベストアンサー率43% (13/30)
回答No.1

オートフィルタを使用する方法ではいけませんか? 表を選択して、データ→フィルタ→オートフィルタ 終了日の横に出来た▼をクリック→空白セル その状態で印刷、です。 元の状態に戻す場合は、▼をクリック→すべてをクリック、▼そのものを消してしまいたい場合は、 データ→フィルタ→オートフィルタをクリックし、チェックをはずす。 で出来ます。

s-holmes
質問者

お礼

回答ありがとうございました。 こういう機能もあるのですね。 私の目的からするとこれで十分!(^O^)

関連するQ&A

専門家に質問してみよう