advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 470 for EDATE (0.001 sec.)
[[20230207225020]]
#score: 9974
@digest: 80599ae725c302e6ec60625765edc44d
@id: 93456
@mdate: 2023-02-08T05:57:04Z
@size: 3842
@type: text/plain
#keywords: 準急 (73895), 修期 (68814), 直営 (53629), 急", (39199), 頼先 (33605), 頼日 (30465), 急23 (29523), 改修 (25009), 朴派 (22494), 委託 (16876), 託") (15241), 急" (14782), は依 (11881), 至急 (10963), ・依 (10356), 依頼 (10308), 期限 (8665), で依 (7927), が準 (7230), 急で (6953), 分改 (6721), 9673 (6590), 急の (6153), 限は (5584), 素朴 (5133), は改 (4858), 区分 (4131), 月後 (4000), 限2 (3848), 前日 (2745), dateadd (2336), メジ (2091)
『関数を教えてください。』(りんご)
B G J M 1 依頼日 依頼先 区分 改修期限 2 23/02/01 直営 至急 23/02/01 3 23/02/01 直営 急 23/02/07 4 23/02/01 直営 準急 23/07/31 5 23/02/01 委託 準急 23/03/31 M列に次の条件となる関数を教えて頂けませんか? 【条件】 1.依頼日が空白の時は改修期限は空白 2.区分が至急の時は改修期限は依頼日を表示 3.区分が急 の時は改修期限は依頼日の6日後の日付を表示 4.区分が準急で依頼先が直営の時は改修期限は依頼日の2か月後の前日の日付を表示 5.区分が準急で依頼先が委託の時は改修期限は依頼日の6か月後の前日の日付を表示 よろしくお願いします。 < 使用 Excel:Excel2010、使用 OS:Windows10 > ---- >4.区分が準急で依頼先が直営の時は改修期限は依頼日の2か月後の前日の日付を表示 >5.区分が準急で依頼先が委託の時は改修期限は依頼日の6か月後の前日の日付を表示 ↑ が正しいのなら、例示の4行目と5行目は改修期限が逆では? だとして・・・ ・依頼日、依頼先、区分は手入力(数式で空白にしていない) ・依頼先は「直営」「委託」の2種類だけ ・区分は「至急」「急」「準急」の3種類だけ M2 =IF(COUNTA(B2,G2,J2)<3,"",IF(J2<>"準急",B2+6*(J2="急"),EDATE(B2,IF(G2="直営",2,6))-1)) 表示形式「日付」で下コピー 以上 (笑) 2023/02/08(水) 08:27:34 ---- 興味がわきましたので別案です。(この式が良いということではありません) CHOOSE関数で M2: =IF(B2="","",CHOOSE(MATCH(J2,{"至急","急","準急"},0),B2,B2+6,EDATE(B2,2+4*(G2="委託"))-1)) (メジロ) 2023/02/08(水) 09:25:00 ---- >↑ が正しいのなら、例示の4行目と5行目は改修期限が逆では? ですよね〜。 VBAは求められていないでしょうが、 関数を考えるよりVBAだ考えたほうがスッキリするので Option Explicit Sub test() Dim i As Long For i = 2 To Cells(Rows.Count, "B").End(xlUp).Row '依頼日(B)が空白の時は改修期限は空白 If Cells(i, "B").Value = "" Then Cells(i, "M") = "" Exit For End If '区分(J)で分ける Select Case Cells(i, "J").Value '至急の場合(改修期限は依頼日) Case "至急" Cells(i, "M") = Cells(i, "B") '急の場合 (改修期限は依頼日の6日後) Case "急" Cells(i, "M") = Cells(i, "B") + 6 '準急の場合 Case "準急" '依頼先(G)で更に分ける Select Case Cells(i, "G").Value Case "直営" Cells(i, "M") = DateAdd("m", 2, Cells(2, "B")) - 1 Case "委託" Cells(i, "M") = DateAdd("m", 6, Cells(2, "B")) - 1 End Select End Select Next Columns("M").NumberFormatLocal = "yy/mm/dd" End Sub (Beck) 2023/02/08(水) 10:08:42 ---- 笑さま メジロさま Beckさま 皆さまコメントありがとうございます。 笑さま・メジロさまからご教授いただいた関数この後検証してみたいと思います。 IF関数+AND関数の組み合わせで考えていたのですが、全然違っていました。(´&#9673;&#9694;&#3178;&#9695;&#9673;) もっと精進します。 Beckさまはマクロまで考えていただいてありがとうございました。 今回は関数で対応していきたいと思います。 ご教授いただいたマクロは機会があれば使わせていただきたいと思います。 (*'ω'*)/ (りんご) 2023/02/08(水) 11:58:55 ---- M2セルに下記を入れるのではまずかったですか? =IF(B2="", "", IF(J2="至急", B2, IF(J2="急", B2+6, IF(AND(J2="準急",G2="直営"), EDATE(B2,2)-1, IF(AND(J2="準急",G2="委託"), EDATE(B2,6)-1, "" ) ) ) ) ) (素朴派) 2023/02/08(水) 13:21:26 ---- 素朴派さま コメントありがとうございました。 素朴派様の関数で希望の結果を表示することが出来ました。 ありがとうございました。(*'ω'*)/ (りんご) 2023/02/08(水) 14:57:04 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/202302/20230207225020.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97050 documents and 608246 words.

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