[[20210808201042]] 『LCM関数で空白をとばす方法はありますか?』(ちびヤギさん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『LCM関数で空白をとばす方法はありますか?』(ちびヤギさん)

   A   B   C   D   E   F(A列の平均化された値)
1 10  15               =LCM(A1:E1)=30とはならない

2 9 13 27
3 6 15 18
4
5
6

このように入力すると、0が返されます。どのように回避したらよいでしょう?
成績処理用に、資料点の平均化を行おうとして躓いています。
1行目は資料点で5つ分、2行目以降は生徒の取得点数です。

解る方がいらっしゃいましたらご教授ください。

なお、マクロでも構いません。
よろしくお願い申し上げます。

< 使用 Excel:Excel2019、使用 OS:Windows10 >


 ご質問よくわからないのですがが、
 >=LCM(A1:E1)=30とはならない
 これは、
 =LCM(A1,B1,C1,D1,E1) のようにされたらどうでしょう?
(6up) 2021/08/08(日) 20:44

6up様、回答ありがとうございます。
ご指摘の通り、そのようにすれば空白は回避されるのですが・・・
引数が多い場合1つ1つ指定しなければならず、少々面倒を感じています。
楽にする方法はないものでしょうか?
(ちびヤギさん) 2021/08/08(日) 20:55

 =LCM(IF(A1:E1="",1,A1:E1))などとする方法は、考えられますが、
 これが、はたして、楽にする方法になるのか疑問です。
 配列数式ですので、Excelのバージョンによっては、Enterの代わりに   
 Ctrl+Shift+Enterが必要です。

 =LCM()の説明をみても引数をカンマで区切って指定するのは、
 普通の方法では、ないでしょうか?
(6up) 2021/08/08(日) 21:20

6up様、回答ありがとうございます。
やってみます。
ありがとうございましたm(__)m
(ちびヤギさん) 2021/08/08(日) 21:39

>=LCM(IF(A1:E1="",1,A1:E1))などとする方法
が回答かとおもいます。
しかし、そもそも、なぜ最小公倍数が登場するのか不明です。
目的に沿ったものなんですか?
正規化するのが普通では?

(そもそも) 2021/08/09(月) 01:33


 あれ? 
 これって、ちょっと前にねむねむさんがアイデア出していたけどなぁ・・

  =LCM(INDEX(A1:E1+(A1:E1=""),0)) '普通Enter

(半平太) 2021/08/09(月) 07:28


 >=LCM(INDEX(A1:E1+(A1:E1=""),0))
 この数式は、空白が、=""などの場合にエラーとなるように思います
(6up) 2021/08/09(月) 08:27

 > この数式は、空白が、=""などの場合にエラーとなるように思います

 だから何なの? いちいち突っかかる人だなぁ。

 私は、ちびヤギさんの反応を見てからでいいと思うけど、取り敢えず、
 こんなのでいけるでしょう。
  ↓    
 =LCM(INDEX((0&A1:E1)+(A1:E1=""),0))

(半平太) 2021/08/09(月) 09:28


 ちょっと待ってくださいよ。

 こう説明があったから、="" と推測するのはおかしいんじゃないですか?
  ↓
 >0が返されます。

(半平太) 2021/08/09(月) 09:39


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.