Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(指定なし : 指定なし)
土日水だけ除いたカレンダー作り
投稿日時: 22/04/01 08:07:19
投稿者: 高円寺の郷のもの

質問です。
土日水だけ除いたカレンダーを作っているのですが、現在すべて手打ちで打っているのですが、やはり時間がかかってしまいます。
 
少し調べたら、「NETWORKDAYS.INTL」関数を使えばよいのは、わかったのですが、どうもうまくいきません。
 
どのように使えば、いいのでしょうか?

投稿日時: 22/04/01 08:18:03
投稿者: 高円寺の郷のもの

私が作ろうしている感じは
   
A1=2002/9/1
a2=木
a3=2022/9/2
a2=金
 
というふうなフォーマットで作っています。

回答
投稿日時: 22/04/01 10:18:16
投稿者: Suzu

	A	B
1	日付	曜日
2	2022/9/1	木
3	2022/9/2	金
4	2022/9/3	土
5	2022/9/4	日
6	2022/9/5	月
7	2022/9/6	火
8	2022/9/7	水
9	2022/9/8	木
     :

 
A2: 2022/9/1 を入力し  下へオートフィル
B2: =TEXT(A2,"aaa") 下へオートフィル
 
フィルター機能を使い曜日が、土日水 のデータを選択
フィルターの結果表示された行を削除
フィルター解除
 
C2: 1 を入力し  下へオートフィル
 
	A	B	C
1	日付	曜日	ID
2	2022/9/1	木	1
3	2022/9/2	金	2
4	2022/9/5	月	3
5	2022/9/6	火	4
6	2022/9/8	木	5
7	2022/9/9	金	6
8	2022/9/12	月	7
9	2022/9/13	火	8
   :

 
C列の連番データ(1〜)を選択しコピー、最終データの次の行のC列にコピー
 
	A	B	C
1	日付	曜日	ID
2	2022/9/1	木	1
3	2022/9/2	金	2
4	2022/9/5	月	3
5	2022/9/6	火	4
6	2022/9/8	木	5
7	2022/9/9	金	6
8	2022/9/12	月	7
9	2022/9/13	火	8
:	:	:	:
	空白	空白	1
			2
			3
			4
			5
			6
			7
			8

 
C列 ID を昇順で並べ替え
 
	A	B	C
1	日付	曜日	ID
2	2022/9/1	木	1
3			1
4	2022/9/2	金	2
5			2
6	2022/9/5	月	3
7			3
8	2022/9/6	火	4
9			4
10	2022/9/8	木	5
11			5
12	2022/9/9	金	6
13			6
14	2022/9/12	月	7
15			7
16	2022/9/13	火	8
17			8

 
C列を削除
B2 を選択後、右クリック ⇒ 挿入 下方向にシフト
A列 を選択後 ホーム-検索と選択 ⇒ 条件を選択してジャンプ 空白セルを選択し OK
A列の空白セルが選択されるので 右クリックから削除 左方向へシフト

投稿日時: 22/04/01 10:28:50
投稿者: 高円寺の郷のもの

ありがとうございます。やってみます!!

回答
投稿日時: 22/04/01 11:09:21
投稿者: んなっと

仮にWORKDAY.INTLのことだとしたら、こんな感じ。
 
A1に年、B1に月を入力して
 
       A  B
 1    2022 10
 2  2022/10/3  
 3     月  
 4  2022/10/4  
 5     火  
 6  2022/10/6  
 7     木  
 8  2022/10/7  
 9     金  
10 2022/10/10  
11     月  
 
A2
=WORKDAY.INTL(IF(ROW(A1)=1,DATE(A$1,B$1,0),A1),1,"0010011")
A3
=A2 書式 ユーザー定義 aaa
 
A2:A3を選択して
条件付書式:数式〜▼
=MONTH(A2)<>$B$1  書式(F)...フォント 色 白
下方向・↓

回答
投稿日時: 22/04/01 12:56:44
投稿者: んなっと

条件付き書式で見えなくするのが気に入らないときは、
式が長くなってしまいますが
 
      A
2 2022/10/3
3     月
 
A2
=IFERROR(1*TEXT(WORKDAY(IF(ROW(A1)=1,DATE(A$1,B$1,0),A1),1,"0010011"),"[<="&EOMONTH(A$1&"/"&B$1,0)&"]0;;;"),"")
 
A3
=A2 書式 ユーザー定義 aaa
 
A2:A3を選択して下方向・↓

回答
投稿日時: 22/04/12 01:49:02
投稿者: SReed

WORKDAY.INTLを使わないとしたら、こんな感じ。
  
A1⇒2022/9/1
A2⇒=TEXT(A1,"aaa")
A3⇒=A1+MID("1211321",WEEKDAY(A1,2),1)
A4⇒=TEXT(A3,"aaa")
 
A3,A4を下方向に必要分コピーすればOK
 
 
A3計算式の内容ですが、上段日付の曜日に応じて
火曜日、土曜日は2日、金曜日は3日それ以外は1日を加算することで土日水をとばします。

回答
投稿日時: 22/04/12 03:32:44
投稿者: んなっと

9/1が水土日の場合、それは除かなければならないことも考慮する必要がありますね。

トピックに返信