○第145回目 加重平均計算式の作成
あちこちに散らばっている件数、値(平均値)の加重平均をとりたいというニーズがあります。
通常の操作では、値×件数をどんどん足していって、最後に括弧でくくり、合計の件数でわる、ということになります。分母の件数も足していく必要があります。
散らばり度合いが大きいと面倒くさくなってしまいますね。また、分母の件数をもう一度指定しなければならないというのも、面倒さが増します。
このような計算式を手軽に作ろうという発想です。
手順
0.計算式を作りたいセルにおいてマクロを実行します
1.第一の組の場所にいって、値と件数を指定します。指定は値と件数という順番にします。
2.次の場所にいって、同様に指定します。これを必要だけ繰り返します。最大組数は6組としました。
3.指定終了の場合は、加重平均の計算式を作り、最初のセルに入れます。
これはこれまでの、マクロをベースにすれば簡単です。
機能をもう少し明確にしましょう。
1.別のシートでのセルを指定できるようにします。(余裕があれば別ブックまで拡張してください)
2.計算結果は、四捨五入して、端数は指定できるようにします。
3.別シートに飛ぶ場合は、今のシートのセルと同じ場所に飛ぶか、それとも、単純に飛ぶかの指定ができます。
4.同一の組の値と件数は、同じ一シートにあるものとします。
注意点としては、
1.各組ごとにシート名を取得しますが、計算式のあるセルと同じシートの場合は、シート名はなくすこと。
2.取得したセル座標から$をとる。(これを基にコピーする時に、$は邪魔になります)
3.デバック中は、計算式に何かの記号をつけて文字化しておいてください。
4.理由はよくわからないのですが、シート名を'で囲むことが必要な場合があり混乱しました。
計算式を、keisansikiに入れて、
Range(AAA1) = keisansikiとすると、シート名を'で囲まなくても大丈夫です。
Range(AAA1).Formula = keisansikiとすると、シート名に工夫(ある場合に限り、'で囲む)が必要です。
このマクロは、使用するセルが、どのシートでも同じ場所にあるときは非常に便利です。

0 件のコメント:
コメントを投稿