[[20080110174038]] 『日曜なら1、月曜なら2・・・を返す』(蚊取線香) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『日曜なら1、月曜なら2・・・を返す』(蚊取線香)

 A1に曜日を入力します。("月"〜"土")
 入力した値が
   月なら1、火なら2、・・・、土なら7
 を返したいです。

 現状は
   =IF(A1="日",1,"")&
    IF(A1="月",2,"")&
    IF(A1="火",3,"")&
    IF(A1="水",4,"")&
    IF(A1="木",5,"")&
    IF(A1="金",6,"")&
    IF(A1="土",7,"")
 としていますが、もう少しスマートにならないものかと思い
 勉強のため質問させて頂きました。

 元となる日付が入ったセルがあればWEEKDAY関数で出来るんですが
 "日"〜"土"の文字をリストから選択するようになっています。

 よろしくお願いします。

 =IF(OR(A1="",ISERR(FIND(A1,"日月火水木金土"))),"",FIND(A1,"日月火水木金土"))
 (ROUGE)

 ROUGEさん
 FIND関数はMID関数と組み合わせるくらいでしか使ったことがなくて、考えてもいませんでした。
 勉強になりました。ありがとうございました。
 (蚊取線香)

 WEEKDAY関数を利用する方法。
 
(1)どこかのセル範囲に日曜日が先頭となるような連続した日付を入力。
   それらのセルの書式設定の表示形式をユーザー定義で aaa とします。
(2)リスト設定したセルのリストの「元の値」に(1)のセル範囲を指定。
   リスト設定したセルの書式設定の表示形式をユーザー定義で aaa とします。
(3)1〜7を返したいセルに =WEEKDAY(A1) とします。
 
【参考】
[[20040319230842]] 『プルダウンから』(Kenny)
 
(みやほりん)(-_∂)b

 みやほりんさん
 リンク先、拝見させて頂きました。
 =CHOOSE(MATCH(A1,{"日","月","火","水","木","金","土"},0),1,2,3,4,5,6,7)
 でも良いですね。
 ここの掲示板で、IF関数で複数場合分けが必要な場合でも、CHOOSE関数を使ってコンパクトに纏めている
 回答者の方を時々見るので、便利そうだなとは思っていたんですが、勉強せず仕舞いになっていました。
 今回、良い機会だったので初めて手を付けてみました。

 ありがとうございました。
 (蚊取線香)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.