昨日、以下のような質問をしました。
>>
セルI6に1/1と入力されています。
セルF6には"10日"と入力されています。
セルK6には式で、K6=I6+F6-2 と入力して、
F6で選択された日数("10日")を足して、
そこから2日前を
自動的に表示されるように式が入っています。
ここで表示される値は「1/8」と、ここまではOKなのですが、
更にこの結果の値を
「土曜、もしくは日曜日の場合は前の金曜日の日付を返す」
という条件で完成させたいのです。
結果的にK6には「1/18」を自動的に表示させたいのですが、
条件付き書式で以下のようにしても「1/19」のままになってしまいます。
=IF(WEEKDAY($M6,1)=1,K6-2,K6)
どのようにすれば、うまく表示する事が出来ますでしょうか?
◎これに対して、明回答をくださいましてこの質問に対しては打開策が見つかりました。
ありがとうございます。
ちなみに回答は以下です。
>>
K6セルには次の様な関数を入力されると良いと思います。
=IF(ISNUMBER(1/DAY(I6)/DAY(I6+F6-2)),I6+F6-2-(WEEKDAY(I6+F6-2,2)>5)-(WEEKDAY(I6+F6-2,2)>6),"")
-------------ここからが、質問になります。-------------
最後にもう1つ、「10日」と選択されているセルはプルダルン式のセルで10日~15日を選択出来るようになっていて
この式を「10日」以外が選択された場合に適用されるようにしたいのです。
なので「11日」~「15日」が選択された場合に
=IF(ISNUMBER(1/DAY(I6)/DAY(I6+F6-2)),I6+F6-2-(WEEKDAY(I6+F6-2,2)>5)-(WEEKDAY(I6+F6-2,2)>
の式で動くようにするには、どうすれば良いでしょうか?
もし出来たら、ご教授願います。
No.6ベストアンサー
- 回答日時:
>・セルI6が 1/11 だとして、セルF6は 10日 が選択された場合、
>セルK6には 1/19 が自動的に
それでしたら、次の様な関数にされると良いと思います。
=IF(ISNUMBER(1/DAY(I6)/DAY(I6+F6-2)),I6+F6-2-AND(F6>=11,F6<16)*((WEEKDAY(I6+F6-2,2)>5)+(WEEKDAY(I6+F6-2,2)>6)),"")
No.5
- 回答日時:
>上記の(2)の動きを11日~15日を選択した場合にのみ適用させたいのです。
申し訳御座いません、御質問の内容を「11日~15日を選択した場合にも適用」と勘違いしておりました。
只、御補足頂いた内容だけではまだ判らない点が御座います。
11日~15日を選択した場合には、(2)の動きのままで良いとして、11日~15日以外を選択した場合には、どの様な動作とすれば宜しいのでしょうか?
単に、何も表示させないだけで宜しいのでしょうか?
それとも何か別の内容を表示させるのでしょうか?
例えば、11日~15日以外を選択した場合に、
「訪問Siteでは11日~15日を選択して下さい」
と表示させるものとした場合には、次の様な関数となります。
=IF(ISNUMBER(1/DAY(I6)/DAY(I6+F6-2)),IF(OR(F6<11,F6>15),"訪問Siteでは11日~15日を選択して下さい",I6+F6-2-(WEEKDAY(I6+F6-2,2)>5)-(WEEKDAY(I6+F6-2,2)>6)),"")
この回答への補足
ご丁寧にありがとうございます。
はい◎言葉足らずでした!
申し訳ないです。
--8日~10日を選択した場合は、F6で選択された日数を足した後、-2日 の結果を表示する処理--
・セルI6が 1/11 だとして、セルF6は 10日 が選択された場合、
セルK6には 1/19 が自動的に
No.4
- 回答日時:
>最後にもう1つ、「10日」と選択されているセルはプルダルン式のセルで10日~15日を選択出来るようになっていてこの式を「10日」以外が選択された場合に適用されるようにしたいのです。
その前に確認しなければならない事があります。
回答No.2を読まれて、試して見られたのでしょうか?
この回答への補足
答No.2の内容でも試してみました!
- - - - - - - - - - - - - - - - - - -
(1)プルダウンで選択した日数(8日~15日)を加え、更にそこから-2日引いた日付を自動表示)
(2)ただし、計算後の曜日が土曜、もしくは日曜日の場合は前の金曜日の日付を返す
- - - - - - - - - - - - - - - - - - -
いずれも条件は結果としてクリアしているのですが、
上記の(2)の動きを11日~15日を選択した場合にのみ適用させたいのです。
**なるべく理解してもらい易いように、Excelには以下の内容で配置してあります。**
~お得意様ルート営業 予定表~
C6:顧客名
D6:担当者名
E6:住所
F6:訪問Site(8~15日)
G6:前回メモ1
H6:前回メモ2
I6:訪問予定日(1)
J6: [済/未]
K6:訪問予定日(2)
L6: [済/未]
M6:訪問予定日(3)
N6: [済/未]
O6:訪問予定日(4)
P6: [済/未]
Q6:訪問予定日(5)
R6: [済/未]
度々のご回答、ありがとうございます。
- - - - - - - - - - - - - - - - - - -
(1)プルダウンで選択した日数(8日~15日)を加え、更にそこから-2日引いた日付を自動表示)
(2)ただし、計算後の曜日が土曜、もしくは日曜日の場合は前の金曜日の日付を返す
- - - - - - - - - - - - - - - - - - -
いずれも条件は結果としてクリアしているのですが、
上記の(2)の動きを11日~15日を選択した場合にのみ適用させたいのです。
可能でしょうか・・?
No.3
- 回答日時:
>上記の式を入れてみたところ、プルダウンから10日を選びセルI6で1/11を選択した結果の表示が
>1/19と表示させたいのですが、1/18になってしまいます。
>なぜでしょうか?
2013年の1/19は土曜日なのですから、
>更にこの結果の値を
>「土曜、もしくは日曜日の場合は前の金曜日の日付を返す」
という条件通りに、その直前の金曜日の日である1/18が表示されただけですが、何が問題なのでしょうか?
この回答への補足
最後にもう1つ、「10日」と選択されているセルはプルダルン式のセルで10日~15日を選択出来るようになっていて
この式を「10日」以外が選択された場合に適用されるようにしたいのです。
「10日」と選択されているセルはプルダルン式のセルで10日~15日を選択出来るようになっていて
この式を「10日」以外が選択された場合に適用されるようにしたいのです。
No.2
- 回答日時:
質問:No.7880479 Excel2007、週末の場合は前の金曜日を返す?
http://oshiete.goo.ne.jp/qa/7880479.html
の方ですね。
補足文を確認した時には既に御質問が締め切られてしまっていたため、放置していたのですが、そのままの式で、
>この式を「10日」以外が選択された場合に適用
出来る筈です。
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
★★ ですから、まずは、その関数としたままで、他の日数の場合も試してみて下さい。 ★★
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
それとも、若しかしますと、F6セルに入力されているのは、「10」~「15」という数値ではなく、「10日」~「15日」という文字列データになっているのでしょうか?
もし、「10日」~「15日」という文字列データになっているのでしたら、「10」~「15」という数値が入力される様に、F6セルのドロップダウンリストを変更される事を御勧め致します。
もしもその際に、F6セルの表示を、どうしても「10日」~「15日」の形式で表示したいという場合には、F6セルの書式設定の表示形式を[ユーザー定義の]
0"日"
とされると良いと思います。
或いは、あまり良い事では御座いませんが、もしも、何らかの理由があって、F6セルに入力するデータ(←表示される内容ではなく、データそのものの事です)を、「10」~「15」という数値データではなく、「10日」~「15日」という文字列データとしたい場合には、K6セルに入力する関数を次の様なものに修正されると良いと思います。
=IF(ISNUMBER(1/DAY(I6)/DAY(I6+SUBSTITUTE(F6,"日",)-2)),I6+SUBSTITUTE(F6,"日",)-2-(WEEKDAY(I6+SUBSTITUTE(F6,"日",)-2,2)>5)-(WEEKDAY(I6+SUBSTITUTE(F6,"日",)-2,2)>6),"")
この回答への補足
見つけてくれてありがとうございます。
前回、そして今回もお世話になっています!
=IF(ISNUMBER(1/DAY(I6)/DAY(I6+SUBSTITUTE(F6,"日",)-2)),I6+SUBSTITUTE(F6,"日",)-2-(WEEKDAY(I6+SUBSTITUTE(F6,"日",)-2,2)>5)-(WEEKDAY(I6+SUBSTITUTE(F6,"日",)-2,2)>6),"")
>>上記の式を入れてみたところ、プルダウンから10日を選びセルI6で1/11を選択した結果の表示が
1/19と表示させたいのですが、1/18になってしまいます。
なぜでしょうか?
No.1
- 回答日時:
分かり易い式はK6セルには次の式を入力すればよいでしょう。
=IF(COUNT(F6,I6)<>2,"",IF(WEEKDAY(I6+F6-2,2)=7,I6+F6-4,IF(WEEKDAY(I6+F6-2,2)=6,I6+F6-3,I6+F6-2)))
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- Excel(エクセル) エクセルの数式で教えてください。 1 2022/10/25 09:26
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/01/10 09:15
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) エクセルの祝日に色が反映しない 4 2022/05/18 09:58
- Excel(エクセル) エクセルで月末、月初の判定をしたい。 4 2022/05/18 23:22
- Excel(エクセル) 出勤簿の土、日、休日に色付けできない 2 2022/08/04 20:10
- Excel(エクセル) エクセルの数式で教えてください。 3 2022/12/22 17:29
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Excel(エクセル) WORKDAY関数 4 2023/06/08 13:23
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
A1セルに入力したら、入力時間...
-
参照先セルに値が入っていない...
-
Excelで同じセルに箇条書きをし...
-
IF関数で0より大きい数値が入力...
-
値を入力後、自動的にアクティ...
-
エクセルで既に入力してある文...
-
yyyy/mm/ddからyyyy/mmへの変換
-
エクセルで複数の条件で掛け算...
-
エクセルで時間の判定をしてい...
-
Excel:文字と数字の組合せ、次...
-
エクセルの数式で計算結果に文...
-
空白でないセルの値を返す方法...
-
Excelでセルに入力されたカラー...
-
エクセルで、特定のセルの内容...
-
マイナス同士の前年比
-
【エクセル】指定したセルに入...
-
Excel 分数の分子を小数点で表...
-
エクセルで10分ごとの時刻の...
-
Excel書式設定が24時間以上の設...
-
EXCELのセル上のURLを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
A1セルに入力したら、入力時間...
-
Excelで同じセルに箇条書きをし...
-
参照先セルに値が入っていない...
-
IF関数で0より大きい数値が入力...
-
エクセルで既に入力してある文...
-
Excel:文字と数字の組合せ、次...
-
空白でないセルの値を返す方法...
-
値を入力後、自動的にアクティ...
-
エクセルで時間の判定をしてい...
-
yyyy/mm/ddからyyyy/mmへの変換
-
Excelでセルに入力されたカラー...
-
エクセルの数式がかぶって、選...
-
エクセルで、特定のセルの内容...
-
エクセルで複数の条件で掛け算...
-
マイナス同士の前年比
-
入力したところまでを自動的に...
-
EXCELのセル上のURLを...
-
excel 関数にて文字を0として認...
-
バーコードが読み取れない原因...
-
ExcelVBAでセルを編集状態にす...
おすすめ情報