advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 1240 for カレンダー (0.001 sec.)
[[20190424082707]]
#score: 6127
@digest: 7b524901fe073cf08c447d2c01890320
@id: 79383
@mdate: 2019-04-25T05:51:28Z
@size: 4708
@type: text/plain
#keywords: 祝関 (21167), 降4 (16967), 日カ (15582), 働日 (11641), 降5 (11543), 体範 (11311), 非稼 (9663), 無縁 (7696), 稼働 (7522), カレ (6322), 0000000 (6024), 休日 (5936), 付= (5536), 日前 (4890), 係無 (4803), 日祝 (4215), レン (3935), autofilter (3793), ンダ (3470), ケ月 (3399), ー") (3398), ダー (3214), 「土 (3081), に4 (2619), プッ (2566), workday (2407), 土日 (2197), 日5 (2173), (= (2019), 2019 (1684), 年分 (1473), 、休 (1394)
『VBA カレンダーから稼働日5日前を判断し処理をする』(いち)
現在、下記のコードでインプットボックスにより稼働日で5日前の日付を入力し、その日より前の日付のデータが全て消えるようなマクロを使用しています。 Sub test_click() Dim tdate, d1 As Date Dim flag As Boolean tdate = Date With Sheets("data") If .AutoFilterMode Then .AutoFilter.Range.AutoFilter 'フィルター .Range("M1").AutoFilter d1 = Application.InputBox(tdate & "より稼働日5日前の日付を入力して下さい。(入力例:18/7/2)", Type:=1) 'インプットボックスにて日付指定 If d1 = 0 Then Exit Sub '0の場合はマクロ終了 .AutoFilter.Range.AutoFilter Field:=13, Criteria1:="<=" & d1 '指定日以前の日付を表示 If WorksheetFunction.Subtotal(103, .AutoFilter.Range.Columns(13)) > 1 Then '削除 .AutoFilter.Range.Offset(1).Resize(.AutoFilter.Range.Rows.Count - 1).EntireRow.Delete flag = True End If .AutoFilter.Range.AutoFilter If flag Then MsgBox d1 + 1 & "から" & tdate & "のデータは削除していません。" Else MsgBox "データがありません" End If End With End Sub そこでインプットボックスに毎回稼働日を入力しなくてもいいようにカレンダーを下記の書式で作成しました。 A2に4/1(=DATE(YEAR(A$1),MONTH(A$1)+3,1))B3に4/2(=A2+1)以降4/30まで 3列目には4月の休日の日付けの所に1が入力されています。それ以外は空白。 A4には5/1、以降5/31まで 5列目には4月と同様に休日に1。 ・・・・AE24が3/31の稼働カレンダー このカレンダーを参考にして今日の日付から稼働日5日前を判断させるマクロにするためにはどうしたらいいのでしょうか? (土日祝関係無しです。) ご教授頂きたいです。宜しくお願いします。 < 使用 Excel:Excel2010、使用 OS:Windows10 > ---- よく分からないですねー >A2に4/1(=DATE(YEAR(A$1),MONTH(A$1)+3,1))B3に4/2(=A2+1)以降4/30まで >3列目には4月の休日の日付けの所に1が入力されています。それ以外は空白。 >A4には5/1、以降5/31まで 1.そのまま再現すると こんなものになりますけど・・合っていないですよね? 行 ____A____ ____B____ _C_ 1 2019/1/24 2 2019/4/1 3 2019/4/2 4 2019/5/1 2019/4/3 5 2019/4/4 : : 30 2019/4/29 1 2.休日リストは休日だけで書き出す方が楽じゃないですか? (半平太) 2019/04/24(水) 12:20 ---- 申し訳ありません。 >>A2に4/1(=DATE(YEAR(A$1),MONTH(A$1)+3,1))B3に4/2(=A2+1)以降4/30まで B3はB2の間違いです。 >>3列目には4月の休日の日付けの所に1が入力されています。それ以外は空白。 3行目の間違いです。 --------------------------------------------------------------------- A1に2019 A2に4/1 B2に4/2 C2に4/3 D2に4/4 と2行目に4月 A3に1 B3は空白(4/1が休日の場合で4/2が稼働日の場合) >2.休日リストは休日だけで書き出す方が楽じゃないですか? このカレンダーを別のブックでも使用しており、統一して使用できればと思ってます。 (いち) 2019/04/24(水) 12:45 ---- 1.結局、休日カレンダーの全体範囲はどうなるんでしょうか? 1ケ月が2行なので、1年分だと「A2:AE25」かなと思いますが・・ 2.あとちょっと引っかかるのが →「土日祝関係無しです」の意味 世の中の「土日祝」は、この5日前の計算とは無縁で、 休日カレンダーの「1」が立っている日付だけが非稼働日である、と言う意味ですか? (半平太) 2019/04/24(水) 13:56 ---- 説明不足で申し訳ありません。 >1.結局、休日カレンダーの全体範囲はどうなるんでしょうか? 1ケ月が2行なので、1年分だと「A2:AE25」かなと思いますが・・ その通りです。 >2.あとちょっと引っかかるのが →「土日祝関係無しです」の意味 世の中の「土日祝」は、この5日前の計算とは無縁で、 休日カレンダーの「1」が立っている日付だけが非稼働日である、と言う意味ですか? こちらもその通りです。 (いち) 2019/04/24(水) 15:16 ---- 休日カレンダーがあるシート名が「カレンダー」だとした場合、 求める日付 = Sheets("カレンダー").[WORKDAY.INTL(TODAY(),-5,"0000000",IF(A3:AE5=1,A2:AE4,0))] (半平太) 2019/04/24(水) 15:29 ---- 訂正 >求める日付 = Sheets("カレンダー").[WORKDAY.INTL(TODAY(),-5,"0000000",IF(A3:AE5=1,A2:AE4,0))] ↓ ↓ 求める日付 = Sheets("カレンダー").[WORKDAY.INTL(TODAY(),-5,"0000000",IF(A3:AE25=1,A2:AE24,0))] (半平太) 2019/04/24(水) 17:49 ---- 返信遅くなり申し訳ありません。 数式ありがとうございます。このような数式を使ったことがなかったので、なんでかなと悩んでました・・・ 年度が変わるとき等まだまだ改善必要になりそうですが、半平太様に教えて頂いたこちらを活用させて頂きます。 またつまづいたら質問させて頂くかもしれません。 ありがとうございました。 (いち) 2019/04/25(木) 14:51 ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/201904/20190424082707.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97012 documents and 608126 words.

訪問者:カウンタValid HTML 4.01 Transitional