- ベストアンサー
エクセルのsumifの検索値
関数のSUMIFの検索値が15桁以上の場合は16桁目から数字を認識しません。 現在21桁の検索値を認識させる方法は、ないのでしょうか。 よろしくお願いします
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
imogasiさん、失礼しました。&有難うございます。 #1の回答は間違っているというご指摘だったんですね。 確かに計算できませんでした。 ということで、#1の回答も =SUMPRODUCT((A1:A10="123456789012345678905")*1,B1:B10) に訂正させてください。 m(_ _)m
その他の回答 (3)
- hakone
- ベストアンサー率54% (40/73)
もし =SUMIF(A1:A12,"<123456789012345678905",B1:B12) という計算をしたかったら、 以下のような式に書き換えてみてはいかがでしょうか。 =SUMPRODUCT((A1:A12<"123456789012345678905")*1,B1:B12) 目的の結果が得られるなら、SUMIFにこだわる必要は ないと思います。 上記の式も、文字列としての比較をしていますので、 桁数などをよく吟味する必要があります。 桁数がばらばらなら、 =SUMPRODUCT((RIGHT(REPT("0",21)&A1:A12,21) <"123456789012345678905")*1,B1:B12) こんな感じでしょうか?
- imogasi
- ベストアンサー率27% (4737/17069)
問題提起します。不可能ではないでしょうか。自信なし。 (例)A列は’を先頭につけてます。 123456789012345678901 1 123456789012345678902 2 123456789012345678903 3 123456789012345678904 4 123456789012345678905 5 123456789012345678906 6 123456789012345678907 7 123456789012345678902 8 123456789012345678909 9 123456789012345678909 10 123456789012345678907 11 123456789012345678906 12 =SUMIF(A1:A12,"<123456789012345678905",B1:B12) が機能しません。 =SUMIF(A2:A13,"<"&T(A5),B1:B12) も機能しません。 ””のところは””があって文字列に見えるが、比較演算子を除いた部分は数字に変換して扱われてしまい、ここで 数の桁越えの障害になるのではなかろうかと推測した。 別件でエクセルは出来るだけ数字だけの文字列は、数値に置換えるクセがあるように思う。 89012345678901 89012345678902 89012345678903 89012345678904 89012345678905 89012345678906 89012345678907 89012345678902 89012345678909 89012345678909 89012345678907 89012345678906 にして,桁数を減らして見ましたが機能せず。 12345678901 1 12345678902 2 12345678903 3 12345678904 4 12345678905 5 12345678906 6 12345678907 7 12345678902 8 で=SUMIF(A1:A12,D7,B1:B12)でD7に="<"&TEXT(A6,"0" や="<"&A6でも23になりました(予想とおり) ---- 文字列でも大小比較をしてくれることは a 1 b 5 c 3 d 4 で=SUMIF(A16:A19,"<c",B16:B19) が6になります。
お礼
ありがとうございます。
- hakone
- ベストアンサー率54% (40/73)
EXCELの仕様で、数値の有効桁数は15桁までです。 ということは、 =SUMIF(範囲,検索条件,合計範囲) の範囲に、21桁の数字が入っているなら その範囲も文字列になっていると思われます。 ということで、 =SUMIF(A1:A10,"123456789012345678901",B1:B10) の様に、検索条件の数字を""で囲ってみて下さい。
お礼
お礼が、遅くなり申し訳ございません。 思っていたように出来ました、ありがとうございます。