[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『条件に合う複数のセルの値を表示したい』(にの)
おせわになっております。
以下の様な表があります。 A B 1 あいう 猫 2 あいう 犬 3 かきく 熊 4 かきく 鳥
下のように、CDEへ表示するにはどうしたらいいでしょうか? A B C D E 1 あいう 猫 あいう 猫 犬 2 あいう 犬 かきく 熊 鳥 3 かきく 熊 4 かきく 鳥
過去ログなど検索しましたが探しきれませんでした。 よろしくご教授願います。
上の表を、下の表のようにするにはVBAコードを書く必要があります。 (seiya)
こんにちは〜♪
C1セルへ =INDEX(A:A,101-LARGE(INDEX((MATCH(A$1:A$100&"", A$1:A$100&"",)=ROW($1:$100))*101-ROW($1:$100),0),ROW(A1)))&""
下にコピーします。
D1セルへ =INDEX($B:$B,101-LARGE(INDEX(($A$1:$A$100=$C1)*101-ROW($1:$100),0),COLUMN(A1)))&""
右と下へコピーします。
データ数が多い場合は、重くなりますので あまりお勧め出来ませんけれど。。。。
ご参考にどうぞ〜。。。
。。。Ms.Rin〜♪♪
対象がごく小範囲で、A列が、同一名称のものがかたまっていることが前提ですが、 数式でもリンクできると思います。 (6UP)
C1に=""&A1。 C2に=IF(C1=$A$9,"",IF(C1="","",""&INDEX(A$1:A$9,MATCH(C1,A$1:A$9,)+COUNTIF(A$1:A$9,C1)+1)))、 として、C2をC9までフィルドラッグ。 D1に =IF(C1="","",IF(COUNTIF($A$1:$A$9,$C1)<COLUMN(A1),"", INDEX(INDEX($B$1:$B$9,MATCH($C1,$A$1:$A$9,)):$B$9,COLUMN(A1)))) として、コピーしてD2:L9に貼り付け。
データ範囲が A1:B4 だったとして C1=IF(COUNT(IF(MATCH($A$1:$A$4,$A$1:$A$4,0)=ROW($A$1:$A$4),ROW($A$1:$A$4)))>=ROW(A1), INDEX($A$1:$A$4,SMALL(IF(MATCH($A$1:$A$4,$A$1:$A$4,0)=ROW($A$1:$A$4),ROW($A$1:$A$4)),ROW(A1))),"")
入れて、 Ctrl + Shift + Enter で確定して下さい。 そして、下行へコピーです。
D1=IF(COUNT(IF($A$1:$A$4=$C1,ROW($A$1:$A$4)))>=COLUMN(A1),INDEX($B$1:$B$4,SMALL(IF($A$1:$A$4=$C1,ROW($A$1:$A$4)),COLUMN(A1))),"")
と入れて、同じく Ctrl + Shift + Enter として確定して下さい。 そして、右列へコピー、更に下行へコピーです。 データ範囲が広い場合は、重くなるかも?
[A] [B] [C] [D] [E] [1] あいう 猫 あいう 猫 犬 [2] あいう 犬 かきく 熊 鳥 [3] かきく 熊 [4] かきく 鳥 [5]
(SS)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.