[[20090324150308]] 『入力した数値以外の数値』(なな) ページの最後に飛ぶ

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

 

『入力した数値以外の数値』(なな)
 エクセルのA列に数値を入れていき、(例えば、1,3,6,9,16など)
 それ以外の数値(2,4,5,7,8,10,11,12,13,14,15など)をB列に表示できる的な方法はないでしょうか?
 できれば、マクロなどではない簡単なやり方があれば教えてください。


 簡単なやり方かどうかは分かりませんが、

     A    B
 1   1    2
 2   3    4
 3   6    5
 4   9    7
 5  16    8
 6       10
 7       11
 8       12
 9       13
10       14
11       15
12

 B1=IF((MAX($A$1:$A$100)-COUNT($A$1:$A$100))<ROW(A1),"",SMALL(IF(ISERROR(MATCH(ROW($A$1:$A$100),$A$1:$A$100,0)),ROW($A$1:$A$100),""),ROW(A1)))

 CtrlとShiftキーを押しながらEnterで確定、配列数式にします。
 それを下にコピーするとこうなります。
 (sato)


 satoさんの式ですと開始が1からの固定で100を超えた数値には対応していないのと、A列で数字がダブった場合にうまくいかないのでそれにも対応した式です。
 ただし、開始数値は1以上でないとエラーになります。

 =IF(MAX(A$1:A$100)-MIN(A$1:A$100)-COUNT(1/FREQUENCY(A$1:A$100,A$1:A$100))<ROW(1:1),"",SMALL(INDEX((COUNTIF(A$1:A$100,ROW(INDIRECT(MIN(A$1:A$100)&":"&
MAX(A$1:A$100))))>0)*MAX(A$1:A$100)+ROW(INDIRECT(MIN(A$1:A$100)&":"&MAX(A$1:A$100))),0),ROW(1:1)))
 (独覚)

 =IF(31-COUNT(A:A)>ROW(),SMALL(INDEX(COUNTIF(A$1:A$15,ROW($A$1:$A$30))*100+ROW(A$1:A$30),0),ROW(A1)),"")

 31-COUNT(A:A)>ROW(), の31は  (A$1:A$30) 設定範囲のセル数に対応で  
 (どうでしゃろ)


(独覚)さんの式で、できました!
ただ、B列に表示されなければいけない、最後の数字が表示されないんです。なぜでしょう???

satoさんと、どうでしゃろさんの式が私の理解不足でちょっとできなかったんですが、
ありがとうございますm(_ _)m

ずっとやり方を探していたので、ほんと助かりました。ありがとうございました!


 すみません(汗

 =IF(MAX(A$1:A$100)-MIN(A$1:A$100)-COUNT(1/FREQUENCY(A$1:A$100,A$1:A$100))+1<ROW(1:1),"",SMALL(INDEX((COUNTIF(A$1:A$100,ROW(INDIRECT(MIN(A$1:A$100)&":"&MAX(A$1:A$100))))>0)*MAX(A$1:A$100)+ROW(INDIRECT(MIN(A$1:A$100)&":"&MAX(A$1:A$100))),0),ROW(1:1)))

 と
 =IF(MAX(A$1:A$100)-MIN(A$1:A$100)-COUNT(1/FREQUENCY(A$1:A$100,A$1:A$100))<ROW(1:1)
 の部分を
 =IF(MAX(A$1:A$100)-MIN(A$1:A$100)-COUNT(1/FREQUENCY(A$1:A$100,A$1:A$100))+1<ROW(1:1)
 にしてください。
 (数式をそのままコピーして使えるようにわざと式内では改行していません)
 (独覚)

早速お返事ありがとうございますm(_ _)m

完璧にできて感動しました!!
本当に助かりました。ありがとうございました★
(なな)


 =IF(31-COUNT(A:A)>ROW(),SMALL(INDEX(COUNTIF(A$1:A$15,ROW($A$1:$A$30))*100+ROW(A$1:A$30),0),ROW(A1)),"")

 31-COUNT(A:A)>ROW(), の31は  (A$1:A$30) 設定範囲のセル数に対応で  
 (どうでしゃろ)
1〜30の数字を使ってですができませんか
範囲 【ROW($A$1:$A$30)】 を替えれば (1〜30の数字)の範囲も替えられます
 

どうでしゃろさんありがとうございます。
そういうことですね☆できました!
これで完璧です。
本当に感謝です(>_<)ありがとうございました。

 (なな)

コメント返信:

[ 一覧(最新更新順) ]


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