advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 28 for 平均 平日 (0.001 sec.)
平均 (1366), 平日 (459)
[[20160811230413]]
#score: 10343
@digest: 450e8a4dfd21951d0c356eea9dfad2e0
@id: 71348
@mdate: 2016-08-13T00:27:56Z
@size: 12801
@type: text/plain
#keywords: 日ぶ (38274), 前平 (36619), 実稼 (31760), 均値 (24146), 日目 (22445), 平均 (19695), 日17 (18789), 一昨 (12535), ら平 (9996), 目: (9878), 超え (7346), を超 (7174), 均を (6528), average (5891), 日毎 (5561), 前回 (5376), 目行 (5353), 日数 (5103), 稼働 (5014), ウッ (4934), 日前 (4891), 値: (4796), た日 (4420), に平 (4339), 2016 (4279), 日分 (3552), 回か (3522), 何日 (3401), ッシ (3351), indirect (3230), (sy (3160), の平 (2837)
『関数についての質問です』(ゼロ)
値が5日ぶりに平均値を超えてきた というのを関数で入れたいです。 例えば、今まで1日目: 6回 2日目:5回 3日目:7回 4日目:3回 5日目:10 という感じに日毎に並んでいて.この場合平均値が6.2場合になります。 ここで5日目にして平均値を超えてきた所の関数での表わし方を教えてください。 宜しければご教授お願いします。 < 使用 Excel:Excel2016、使用 OS:Windows10 > ---- こんばんわ。 質問の内容だけでは要件の全容が分かりにくいです。 もう少し説明して下さい。 5日目と言うのは1日目から起算しての5日目と言う事ですか? 6日目や7日目が超えてる場合は? もしくは前回平均を超えた日から5日目? 例では3日目と5日目が平均値を超えていますが、対象になるのは5日目だけ? 平均値を求める範囲は? 常に1日目から最終日までですか? それとも2日目の場合は、1日目と2日目だけの平均値ですか? もしくは過去5日分とかですか? 表示させる方法は? 別のセルに平均値を超えてるのは何日目などと表示させるのですか? それとも条件付き書式などで、平均を超えてるセルの色を変えるとかですか? (sy) 2016/08/11(木) 23:58 ---- 駄文失礼しました。 今日の値:120 昨日の値90 一昨日の値が90 3日前の値:80 4日前の値が80 この時の平均値は92になります。 “今日の値“を含めると5日ぶりに平均値を超えてきた事になります。←何日ぶりに平均値を超えてきたのかを知りたいです。 求める範囲は今日〜以前平均値を超えた日までで、表示させる方法としては、別のセルに出力させたいです。 つまり、以前に平均値を超えてきた日から何日目にしてようやく今日の値が平均値を超えてきたのか。それを出力させたいです。 どうか、ご教授お願いします。 (ゼロ) 2016/08/12(金) 08:10 ---- こんにちは >1日目: 6回 2日目:5回 3日目:7回 の 3日目の時点で平均6を超えていると思うのですが? >今日の値:120 昨日の値90 一昨日の値が90 3日前の値:80 4日前の値が80 も3日目の時点で平均83.3・・・を超えています。 >求める範囲は今日〜以前平均値を超えた日 ではないのですか? (ウッシ) 2016/08/12(金) 08:53 ---- 書きこ途中で寝て起きたら、ウッシさんから同じ指摘がありましたね。 今日が平均値を超えたとして、今日が以前平均値を超えた日から何日目になるかを求めたい。 それを別セルに何日ぶりと言う感じに表示させる。 と言うのは分かりました。 分からないのは、比較する平均値の求め方です。 >求める範囲は今日〜以前平均値を超えた日までで、表示させる方法としては、別のセルに出力させたいです。 これは値と比較させる平均値を求める時の範囲として、以前平均値を超えた日から現在までの平均値を求めて、その平均値と比較すると言う事ですか? 例では4日前から今日までの5日分の平均? でも前回の日からの起算としたら、上記例では一昨日の時点での平均は83.3になって、一昨日の値90は平均を超えてしまいますよね。 説明に矛盾があるので、式の組み立てが出来ません。 もう一度、平均値の求め方に関しての例題に矛盾の無いように検討されて、レイアウトも提示して頂けませんか。 (sy) 2016/08/12(金) 09:41 ---- ちょっと疑問点を残したままですが、 平均の算出は前回超えた日からと言う事で、 以下のようなレイアウトを想定しています。 C・D列を作業列にして、F2セルに結果を表示させます。 A B C D E F 1 日付 値 平均値 比較 前回から平均を超えた日数 2 8/1 80 1 3日目 3 8/2 80 80 0 4 8/3 70 76.6667 0 5 8/4 90 80 4 6 8/5 90 90 0 7 8/6 80 86.6667 0 8 8/7 50 77.5 0 9 8/8 80 78 8 10 8/9 80 80 0 11 8/10 90 83.3333 10 12 8/11 90 90 0 13 8/12 120 100 12 14 120 0 15 120 0 D2 1を手入力 C3 =AVERAGE(B3:INDEX(B$2:B2,MAX(D$2:D2))) D3 =(B3>C3)*ROW(A2) C・D列とも下にオートフィル F2 =IFERROR(IF(VLOOKUP(TODAY(),A:D,4,0),TODAY()-INDEX(A:A,LARGE(D:D,2)+1)+1&"日目",""),"") ちょい結果の式を間違えました、修正します。(11:24) (sy) 2016/08/12(金) 10:47 ---- こんにちは A B C 日 回数 前回から平均を超えた日数 2016/8/1 6 2016/8/2 5 2016/8/3 7 3日ぶり 2016/8/4 3 2016/8/5 10 2日ぶり 2016/8/6 80 2016/8/7 80 2016/8/8 90 3日ぶり 2016/8/9 90 2016/8/10 120 2日ぶり 2016/8/11 90 2016/8/12 120 2日ぶり 2016/8/13 2016/8/14 セルC2に =IFERROR(IF($B2>AVERAGE(INDIRECT("$B"&MAX(($C$1:$C1<>"")*ROW($C$1:$C1))+1&":B"&ROW())), $A2-INDIRECT("$A"&MAX(($C$1:$C1<>"")*ROW($C$1:$C1))+1)+1&"日ぶり",""),"") と入力して、Ctrl+Shift+Enterキーで確定。 セルC2を下方へフィルコピーで。 (ウッシ) 2016/08/12(金) 12:46 ---- 先ほど私の提示した方法は、平均値の算出や表示の日数に、前回平均値を超えた日も含んでたので修正します。 ウッシさんのように一覧表示の方が分かりやすいので、変更します。 A B C 1 日 回数 前回から平均を超えた日数&nbsp; 2 8/1 80 3 8/2 80 4 8/3 70 5 8/4 90 4日ぶり 6 8/5 90 7 8/6 80 8 8/7 50 9 8/8 80 4日ぶり 10 8/9 80 11 8/10 90 2日ぶり 12 8/11 90 13 8/12 120 2日ぶり 14 8/13 15 C2 =IFERROR(IF(B2>AVERAGE(B2:INDEX(B$2:B2,MAX(INDEX((C$1:C1<>"")*ROW(A$1:A1),0),1))),A2-INDEX(A1:A$2,MAX(INDEX((C1:C$2<>"")*ROW(A1:A$2),0),1))+1&"日ぶり",""),"") 下にオートフィル To ウッシさん ウッシさんの式、何故か私のレイアウトで実行すると9行目が正しく表示されませんね。 式には問題無さそうですけど、なんでだろう? 私の環境だけ? (sy) 2016/08/12(金) 17:26 ---- 報告だけ。 syさんのレイアウトで、ウッシさんの式を試すと、9行目が表示されないというより、 syさんの式で出てくる 9行目と11行目がなくなり、13行目に、あわせて 8日ぶり とでてきました。 (要件を読んでいないので syさんの解釈があっているのか、ウッシさんの解釈があっているのかは、わかりません) (β) 2016/08/12(金) 17:39 ---- To βさん βさんの環境でもそうなりますか。 解釈とかの問題ではなく、引数内の戻り値は私の式と同じになってるんですけど、 何故かIFの結果だけがおかしいんです。 例えば、以下だけにすると75を返します。 =AVERAGE(INDIRECT("$B"&MAX(($C$1:$C8<>"")*ROW($C$1:$C8))+1&":B"&ROW())) 以下にすると、TRUEを返します。ここまでは良いんですけど、 =$B9>AVERAGE(INDIRECT("$B"&MAX(($C$1:$C8<>"")*ROW($C$1:$C8))+1&":B"&ROW())) 以下にすると、FALSEの結果を返します。ばらすとTRUEになるのに何で? =IF($B9>AVERAGE(INDIRECT("$B"&MAX(($C$1:$C8<>"")*ROW($C$1:$C8))+1&":B"&ROW())),1,0) なので、以下のように第一引数に=FALSEを付けると、正しく結果が返ります。 =IFERROR(IF($B9>AVERAGE(INDIRECT("$B"&MAX(($C$1:$C8<>"")*ROW($C$1:$C8))+1&":B"&ROW()))=FALSE, $A9-INDIRECT("$A"&MAX(($C$1:$C8<>"")*ROW($C$1:$C8))+1)+1&"日ぶり",""),"") こうなるのは、9行目だけです。 INDIRECTの引数を見ても参照先はB6:B9になってるので、AVERAGEの結果は75になって、 IFの判定もTRUEにならないとおかしいんです。 と言うか、ばらせばちゃんとTRUEを返してるんですけどね。 もしかしてバグ? (sy) 2016/08/12(金) 18:40 ---- 単なる思い付き (なので解決するかはわからない) &ROW() を &INDEX(ROW(),1) としたらどうなるだろうか? たしかROW関数の結果は配列になったはずなのでINDEX関数で単一の値に変換。 (=ROW()を選択してF9キーで結果を確認すると{1}(1行めの場合)となる) (ねむねむ) 2016/08/12(金) 19:05 ---- ねむねむさんの方法にしたら、正しく表示されましたね。 INDIRECTは引数に配列を使うと不具合起こす事があると言う事ですかね? (sy) 2016/08/12(金) 19:20 ---- こんばんは 2016/08/12(金) 12:46 ダメでしたね。 ねむねむさんの方法にすると出来ましたけど、配列数式でもなく出来る syさんの 2016/08/12(金) 17:26 の数式がいいですね。 (ウッシ) 2016/08/12(金) 21:34 ---- 皆さんダメなんですね。 ヘルプには書いてないけど、INDIRECTを使う時は、引数には戻り値の要素数が1つであっても配列にならないように気を付けないといけないと言う事なんですね。 (sy) 2016/08/12(金) 22:00 ---- 皆さん本当にありがとうございます。説明したかったのは.... A B C D E F 日付 値 5日毎の平均平均を超えてきた日 前回から平均を超えた日数 判定 7 8月9日 1570 1544.2 ○ 10日 ○ 8 8月8日 1483 1570.2 × × 9 8月7日 1502 1614.4 × × 10 8月6日 1543 1656 × × 11 8月5日 1623 1681.6 × × 12 8月4日 1700 1709.2 × × 13 8月3日 1704 1737.4 × × 14 8月2日 1710 1747.6 × × 15 8月1日 1671 1752.4 × × 16 7月31日 1761 1773.4 × × 17 7月30日 1841 1773.8 ○ × 18 7月29日 1755 1746.4 ○ × 19 7月28日 1734 1740.4 × × 20 7月27日 1776 1758.8 ○ × 21 7月26日 1763 1773.8 22 7月25日 1704 1802.8 23 7月24日 1725 1851 24 7月23日 1826 1891.8 25 7月22日 1851 1908.8 26 7月21日 1908 1538.6 27 7月20日 1945 1157 28 7月19日 1929 768 29 7月18日 1911 382.2 ・5日毎の平均値の求め方…8/9 なら(B7‾B11)/5 …8/8なら (B8‾B12)/5 …8/7なら(B9‾B13)/5 という感じです。 D7‾D17は10日ぶりに平均値を超えてきたという感じです。 質問です 私が求めたいのは、前回に5日毎の平均値を超えた日から5日以上経ち、且つ本日(この例なら8/9)に5日毎の平均値を越えてきたものです。 D列の平均を超えてきた日の計算式とE列の前回から平均を超えた日数の計算式,F列の判定のの計算式が知りたいです。 親身になって考えて下さり本当にありがとうございます。 (ゼロ) 2016/08/12(金) 23:55 ---- こんばんわ。 F列の判定って何ですか? F列が○×になる判断基準は何ですか? このレイアウトは日付が進めば行を挿入するんですか? こう言う表の作りは参照範囲が狂うので、INDIRECTなどの揮発性関数を多用する事になるので、 下に追加するレイアウトを強くお勧めしますが、変更は出来ないんでしょうか? どうしても今のレイアウトでと言う事でしたら、日付の追加で行を挿入したら、下からオートフィルして下さい。 (F列は意味が分からないので質問者さんの返答待ちです。) C7 =AVERAGE(B7:B11) D7 =IF(B7>C7,"○","×") 下にオートフィル A列の日付は必ず1日づつ加算されてるみたいなので、E7は以下で(日付が飛ぶ事があるなら、そこそこ複雑な式になります) E7 =IF(AND(SUM(COUNTIF(INDIRECT("D8:D12"),"○"))=0,D7="○",ROW()=7),IFERROR(MATCH("○",INDIRECT("D8:D100"),0)&"日",""),"") (sy) 2016/08/13(土) 01:18 ---- おはようございます。 ご返信ありがとうございます。 F列の判断基準は前回に平均値を超えた日(7/30)から5日以上経ち、且つ、本日(この例なら8/9)に平均値を超えてきたものを○、そうでないものを×としたいです。 例えば、D7〜D17は前回から平均を超えて10日間経って超えてきている(ルールでは5日以上なら○)ので 判定は○という感じです。 説明が下手ですいません。 わかりました。下に追加するレイアウトに変更します。 ちなみにA列の日付の所なんですが、平日のみの日付はできるのでしょうか? 休日や祝日は除きたい場合です。 (ゼロ) 2016/08/13(土) 07:55 ---- おはようございます。 >ちなみにA列の日付の所なんですが、平日のみの日付はできるのでしょうか? >休日や祝日は除きたい場合です。 可能ですけど、それには要件を幾つか明確にしなければいけません。 平均値・前回から平均を超えた日数・判定の計算範囲や結果は、実稼働日数での経過日数で計算するのか、 実際の日付の差なのかを、それぞれで明確にして下さい。 例えば以下のような場合(例では土日を省いていますが、実際の表の休日は好きに合わせて下さい) 8/3 水 1704 8/4 木 1700 8/5 金 1623 8/8 月 1483 8/9 火 1680 平均値を求める範囲は8/5〜8/9までの5日間なのか、実稼働数の8/3〜8/9までなのかで、数式や結果が変わってきます。 前回から平均を超えた日数や判定の数式や結果も、実稼働日数での経過日数なのか、実際の日付での引き算なのかで、 数式や結果が変わります。 後、前回から平均を超えた日数の表示する位置は最新日付の横でも良いですか? 8/3 水 1704 8/4 木 1700 8/5 金 1623 8/8 月 1483 8/9 火 1680 ここに表示 それとも上に表示する方が良いですか? この辺に表示(項目行と同じか項目行より上) 項目行 8/3 水 1704 8/4 木 1700 8/5 金 1623 8/8 月 1483 8/9 火 1680 日付と同じ行に表示するなら、簡単な数式で結果が出ます。 項目行と同じか上に表示するメリットは、ウィンドウの固定で項目行より上を常に表示させるようにしておけば、 データ件数が多くて下にスクロールさせてる時でも、常に表示されます。 代わりに数式は複雑で長い数式になります。 正直E7セルに表示するのは、ウィンドウ固定で常に表示も出来ないし、数式も複雑で長くなるので、デメリット以外無いのでお勧めしません。 上記を以下に纏めましたので、番号に対しての要件を回答して下さい。 1,平均値の範囲(実稼働数で5日分・実際の日付で5日分) 2,前回から平均を超えた日数の結果(実稼働数で5日分・実際の日付で5日分) 3,判定の判断基準(実稼働数で5日以上・実際の日付で5日以上) 4,前回から平均を超えた日数の表示位置(同じ日付の行・項目行と同じ行か上・E7セル) (sy) 2016/08/13(土) 09:27 ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/201608/20160811230413.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97028 documents and 607994 words.

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