時間を生み出すブログ はりの助

関数を一つのセルにまとめる

【イラストのレイアウト印刷も 「はりの助」】

次図の表は前回作成したものです。
曜日の欄が2つありますね。
「曜日2」の欄では「条件付き書式」で日曜日を赤色にするためにCHOOSE関数で曜日の文字に変換しました。
「曜日3」の欄ではIF関数で不要な4月31日の曜日を表示しないようにしました。


これは作業用のセルを使って、数式を分かりやすくしたためです。
関数の中に関数を入れる方法を使えば「曜日2」の欄がなくても処理が可能です。
「こんなこともできるのだ」という程度で読んでください。

M5セルの数式
  =IF(H5=L5,K5,"")
の赤色の部分にK5セルの数式を入れればいいのです。
  =if(H5=L5,CHOOSE(J5,"日","月","火","水","木","金","土"),"")

もっと言えば、「日2」の欄も「曜日の値」の欄も「日付」の欄も不要です。
全てを「曜日3」の欄にまとめることができます。



M5セルの数式は
  =IF(H5=DAY(DATE($I$1,$H$2,H5)),CHOOSE(WEEKDAY(DATE($I$1,$H$2,H5),1),"日","月","火","水","木","金","土"),"")
となっています。
「年」と「月」のセルを移動させればI~L列の4列は不要です。
作業セルがないと、シート自体はスッキリしますが数式はとても分かりにくくなりました。

続けて作業している場合はいいですが、1ヶ月後、あるいは1年後に見るとどのようになっているかが自分でも分からなくなります。
エクセルで数式を利用する場合には他の人が見ても分かりやすい構造にすることが大事だと思います。
他の人が分かりやすいということは、後になって自分が見ても分かりやすいということです。
そのためには作業用のセルを上手に使うべきでしょう。

なお、最後の数式は1ヶ月分では問題ないですが、右に11ヶ月分コピーするとうまくいきません。
全部が同じ月になってしまいます。
これを解決する方法は改めて説明します。

「レイアウトワープロ はりの助」公式ホームページ

上図のサンプルファイルをダウンロードできますサンプルファイルについて
「sample_150502.xlsx」をダウンロード

この記事が参考になったら、右下の「いいね!」を押してください。

   <前へ>   <目次へ>   <次へ>
名前:
コメント:

※文字化け等の原因になりますので顔文字の投稿はお控えください。

コメント利用規約に同意の上コメント投稿を行ってください。

 

  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

最新の画像もっと見る

最近の「エクセルとの連携」カテゴリーもっと見る

最近の記事
バックナンバー
2023年
2022年
人気記事