>もう一項目B列を追加して1.3(第一第三)などの週を任意で選択して隔週表示出来るようにしたい
との事ですが、それだけしか説明がないのでは、具体的にはどの様な形式で第一第三などの週を指定されるおつもりなのかという事が今一つ解りません。
それに、A3セルに曜日を入力して、B列のセルに第一第三などの週を指定する値を入力すとした場合、例えば「第2、第3月曜」と「毎週水曜」、「第1、第4木曜」に「◎」を表示させる場合などの様に、曜日ごとに週が異なっている場合には、B列のセルに入力されている「第一第三などの週を指定する値」が「月」、「水」、「木」などの中のどの曜日に関する「週を指定する値」なのかという事を、どの様に区別すれば良いのでしょうか?
ですから、やり方を少々変えて、例えば以下の様にされては如何でしょうか?
前提条件として、A3セルには例えば
「毎週火曜、第1.3.5水・金、第2・4月土曜」
などの様に、1つのセル内に曜日と第何週(或は毎週)なのかを指定する文字列をまとめて入力する様にします。
その際、「第1.3.5水・金」や「第2・4月土曜」などの様に第何週なのかを表す数字や、曜日を表す文字の間を区切る記号等は「.」でも「・」でも「,」でも何を使用しても構いませんし、「第135水金」などの様に区切らずに記述しても構いません。(「第一、二」などの様な漢数字は不可)
但し後述する関数では、例えば「第2第4月曜」などの様に第何週なのかを表す数字同士の間に「第」や「毎」の文字が挟まっている場合、「曜日の直前にある『第』や『毎』の文字」の位置~「『月曜』等の曜日を表す文字」の位置の間にある数字しか「その曜日に関する週の数字」と見做されず、「第2第4月曜」の場合には、曜日を表す「月」の文字の直前にある「第」の文字は、「第4」の「第」の文字ですので、「第4月曜」の部分のみが「月曜に関する記述」と見做されて、その更に前の部分にある「第2」に関しては「月曜に関する記述」とは見做されないため、「第4月曜」には「◎」が表示されるのに対して、「第2月曜」には「◎」が表示されなくなってしまいます。
ですから、「第2第4月曜」などの様に同じ曜日に関する記述の途中に「第」や「毎」の文字が挟まっている様な事は無い様に願います。
一方、曜日に関しては「月曜土曜」などの様に途中に「曜」の文字が挟まっていても構いません。
但し、「毎週火曜日」などの様に「曜」などの後に「日」の文字が入っていますと、「日曜」に関する記述と区別出来なくなりますので、「日曜」に関する記述以外ではA3セルに「日」の文字を入力しない様にして下さい。
同様にA3セルには、「月曜」に関する記述以外では「月」の文字を入力しない様にして下さい。
上記の条件が守られている場合において、以下の様な方法を用いれば、指定した週の指定した曜日の日にのみ「◎」が表示されます。
まず、B2セルに次の関数を入力して下さい。
=IFERROR(($A$1&"/"&$A$2&"/"&COLUMNS($B2:B2))+0,"")
次に、B2セルの書式設定の表示形式を[ユーザー定義]の
d
に設定して下さい。
次に、B3セルに次の関数を入力して下さい。
=IF(B$2="","",IF(ISNUMBER(FIND(CHAR(1),SUBSTITUTE(SUBSTITUTE(ASC(CLEAN(REPLACE(LEFT($A$3,FIND(TEXT(B$2,"aaa"),$A$3)),1,FIND(CHAR(1),SUBSTITUTE(SUBSTITUTE(LEFT($A$3,FIND(TEXT(B$2,"aaa"),$A$3)),"毎","第"),"第",CHAR(1),LEN(LEFT($A$3,FIND(TEXT(B$2,"aaa"),$A$3)))-LEN(SUBSTITUTE(SUBSTITUTE(LEFT($A$3,FIND(TEXT(B$2,"aaa"),$A$3)),"毎",),"第",))))-1,))),"毎",CHAR(1)),ROUNDUP(DAY(B$2)/7,0),CHAR(1)))),"◎",""))
次に、B2~B3のセル範囲をコピーして、C2~AF3のセル範囲に貼り付けて下さい。
以上です。
お礼
kagakusuki 様 ご親切に回答いただきありがとうございます 無事難問がご教授によって表示させることが出来ました 質問内容が曖昧でお手を煩わせ申し訳ございませんでした ご提案の事が一番したかった事で、浅い知識で勝手にB列に 項目追加したらなどと考えていました この方式ですと全く問題なく初期願望の計算式ができ感謝致します 本当に助かりまして業務効率が上がり助かります