アプリ版:「スタンプのみでお礼する」機能のリリースについて

添付ファイルの様な表が2つあります。
各日のオレンジのセルに、右の表から数値を引用し平均を出したいです。

1月1日の場合:1(A),2(B),3(C)の平均で2
1月2日の場合:1(A),1(A),2(B)の平均で1.33
1月3日の場合:2(B),2(B),2(B)の平均で2

実際には20行くらいあるので、何とか関数で対応したいと思っています。
よろしくお願いします。

「別の表から検索した数値の平均を出したい(」の質問画像

A 回答 (7件)

其れにしても、


Microsoftの、
仕様という名の、
バクの 数々、

早く 直って、
欲しいものです。


今回も、
transpond構文や、
OFFSET構文で、
苦戦されられました。


特に、
TRANSPOSE構文は、
配列数式が 前提なのに、

配列数式では 上手く機能しない、
なんて 為体、

此のTRANSPOSE構文が、
ちゃんと 機能しさえすれば、

文字列品番でも 突き合わせれるのですが、
残念で なりません。
    • good
    • 0

こう言う事ですかね、



代表式、
=AVERAGE(INDEX(MMULT((ROUND(MOD(SMALL(INDEX(CODE(B$2:B$4)/1000+ROW(B$2:B$4),,),COLUMN(OFFSET($A$1,0,0,1,COUNTA(B$2:B$4)))),1)*1000,0)=CODE($F2:$F4))*$G$2:$G$4,SIGN(ROW(OFFSET($A$1,0,0,COUNTA(B$2:B$4),1)))),,))

余り、
良い 出来では、
ないですね、

冒頭1文字しか 比較していません。

品番が 数字のみなら、
もっと、
上手く 行くのですが、

Microsoftの、関数上の、
機能不全により、
制限が 掛かってまして、

此の バグ的制限が、
改選されない限りでは、
文字の 突き合わせは、
辛いですね。


動作ですが、

直上の 品番を、
文字コードに 直して、
横並べにし、

又、
品番も 文字コード化し、
付き合わせて、

真理値表的なものを 作成して、
Mmult構文により、
行毎に 集計しています。


因みに、
Mmult構文を 使いこなして、
こう言った事を される方を、
他には 見ないですね。


なかなか、
ハードルは 高めですよね。


ファイル、
https://1drv.ms/x/s!AjviygfJDgV_2y-RLWFvP6Wy31Lg

尚、
ファイルは、
ローカルに 別名保存して、
其のファイルを 扱うように、
してくださいね、

別名保存で なければ、
意味が ないですよ。


そうすれば、
閲覧も、編集も、
叶うものと 思います。
「別の表から検索した数値の平均を出したい(」の回答画像6
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
見たことない関数ばかりですが解決しました!!

お礼日時:2019/01/30 15:53

こんばんは!



手っ取り早く、この質問限定の関数(ユーザー定義関数)を作ってみてはどうでしょうか?
前提として、画像のように参照先の表(F・G列)は隣り合っているとします。

Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻り(VBE画面を閉じて)
通常のワークシート関数と同じ使い方をします。

Function heikin(myArea As Range, myR As Range) '//この行から//
 Dim c As Range, r As Range
 Dim cnt As Long, myVal
  For Each c In myArea
   For Each r In myR
    If c = r Then
     myVal = myVal + c.Offset(, 1)
     cnt = cnt + 1
    End If
   Next r
   Next c
  heikin = myVal / cnt
End Function '//この行まで//

画像の配置だと、B5セルに
=heikin($F2:$F4,B2:B4)
という数式を入れフィルハンドルで右へコピーします。m(_ _)m
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
お客さんのファイルに取り入れますので、今回は関数のみで対応しようと思います。
今後、自社で使用する際に参考にさせていただきます。

お礼日時:2019/01/30 15:43

組み上げますので、


閉めずに、
お待ち 頂けますか?
    • good
    • 0

B5: =AVERAGE(FIND(B2:B4,$F2&$F3&$F4))



【お断り】
1.上式は必ず配列数式として入力のこと
2.A=1、B=2、C=3 の場合に限る(*^_^*)
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
品番は他にも沢山ありますので。。
参考にさせていただきます。

お礼日時:2019/01/30 15:42

AVERAGEIF関数でできませんか?

    • good
    • 0
この回答へのお礼

回答ありがとうございます。
AVERAGEIFで試しましたが、良くわかりませんでした。

お礼日時:2019/01/30 15:41

右表を検索対象としてVlookupを利用した総和を行数で割ればよいです。

    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2019/01/30 15:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!