Microsoft Excel [関数のみ]
日時データの範囲から時間範囲指定し、対象時間範囲に一致する複数の結果を最初の1回目のみ特定の表示や計算をする。
今回はExcelの関数のみで解決できるのでご紹介したいと思います。
Excelで計算をする際に日付や時間で特定の範囲から何かの計算をさせることはよくあると思います。
しかし、時間の範囲の判断をした結果を複数行い、その結果の中で同じ条件の場合は1度だけ計算をするような複雑な事をすることがあります。
私もExcelは得意ではないのでいろいろ調べて計算式を組み立てたのですがうまくいきませんでした。
結果として、解決できた内容を記載したいと思います。
Excelでやりたいこと
Aセルには日時のデータが入っており、Bセルに結果を表示します。
Aセルの日時から
06時30分から18時30分を”データA”とし、18時30分から翌日の06時30分までを”データB”とします。
ここまでは普通の時間範囲を判定文で表示することはできますが・・
Aセルの特定の日の06時30分から18時30分の範囲のデータが複数存在する場合は、”データA”と表示するのは1度だけとする。(同じく18時30分から翌日の06時30分も同じ条件で”データB”と1度だけ表示する)
これを実際のExcelで表現すると以下のようになります。
Excel関数で対応した内容
セルCのように表示するには下記のような数式を入れることで実現します。
=IF(COUNTIFS(A$2:A2,">="&INT(A2)+"18:30:00",A$2:A2,"<="&INT(A2+1)+"06:29:59")=1,"データB",IF(COUNTIFS(A$2:A2,">="&INT(A2)+"6:30:00",A$2:A2,"<="&INT(A2)+"18:29:59")=1,"データA",IF(COUNTIFS(A$2:A2,">="&INT(A2-1)+"18:30:00",A$2:A2,"<="&INT(A2)+"06:29:59")=1,"データB","")))
同じ悩みをお持ちの方のお役に立てればよいのですが・・・。
今話題の商品や、その他のおすすめはこちら
No tags for this post.