スプレッドシートにて、INDEX、MATCHにて条件に一致するセルの値を返す計算をしたいのですが、
以下例のように、すべて同一の値が算出されてしまいました。
どなたか指定条件の誤りについてご指摘、
ほか方法についてご教示くださいませ。
※以下のようにスプレッドシートAのE列「未完了」に一致する
aa、ab、adの値をスプレッドシートBに返したく、次のような関数を「スプレッドシートB」のA2に指定したところ、
「未完了」に一致するすべて同一の値が返されてしまいました。。
=INDEX('スプレッドシートA'!$A$2:$E$500,MATCH("未完了",'スプレッドシートA'!$E$2:$E$500,0),MATCH(A$1,'スプレッドシートA'!'!$A$1:$E$1,0))
<例>スプレッドシートA
ーーーーーーーーーーーーーーーーーー
A列 B列 C列 D列 E列
aa ab ac ad ae
東京都 ×× △△ ▼▼ 未完了
東京都 ●● ◎◎ ×× 未完了
埼玉県 ×× △△ ○○ 完了
・
・
・
ーーーーーーーーーーーーーーーーーー
<例>スプレッドシートB →以下のようにすべて同一の値のみ返されてしまった。。
ーーーーーーーーーーーーーーーーーー
A列 B列 C列
aa ab ad
東京都 ×× ▼▼
東京都 ×× ▼▼
東京都 ×× ▼▼
東京都 ×× ▼▼
東京都 ×× ▼▼
・
・
・
ーーーーーーーーーーーーーーーーーー
No.1ベストアンサー
- 回答日時:
こんにちは。
回答が無いようですので・・・スプレッドシートはまったく知りませんが、MSエクセルとある程度共通点があるものとして、類推での回答です。
ですので、以下の例示式は正しくないかも知れませんが、考え方が伝われば良いものとして記していますので、適宜修正を願います。
どのような結果を期待なさっているのかハッキリとはわかりませんが、ご提示の式ではほとんどのセル指定は絶対指定ですから、その部分に関してはフィルコピーで変わることは無いものと思います。
変化するのは
INDEX(参照, 行, 列) の列の部分だけのように見受けられます。
MATCH(A$1,'スプレッドシートA'!'!$A$1:$E$1,0) の部分がこれに該当します。
これに関しては、ご提示の結果にもきちんと反映されているようですが、行指定に当たる
MATCH("未完了",'スプレッドシートA'!$E$2:$E$500,0)
の部分は、行が変わっても常に同じ値になるので
>以下のようにすべて同一の値のみ返されてしまった
というのは、式の示す通りの結果だと言えます。
もしも、『E列が「未完了」と記されている行を「詰めて抽出」したい』というような意味でしたら、エクセルでは配列数式を利用し、SMALL関数でその順位を指定することで行の参照位置を得る方法が用いられています。
そもそも、スプレッドシートで配列数式のような概念が存在するのかどうかわかりませんが、式を分解して作業列を利用することで「詰めて週出」は可能になると思われます。
一応、その考え方を記しておきますと、
(以下の式はそのままでスプレッドソートで動作するのかはわかりません)
1)シートAに作業列(例えばF列)を設け、以下の式をフィルコピーしておく
=IF(E2="未完了",COUNTIF(E$2:E2,E2),"")
これによって、未完了に該当する行にだけ、上から順に1、2、3・・・と表示されるはずです。
2)シートBのINDEX関数の行の参照指定を、上記作業列をMATCHで検索する形式に変更する
MATCH(Row()-1,'スプレッドシートA'!$F$2:$F$500,0)
・・・といった感じです。
このような要領で、「詰めて抽出」が可能になるものと思います。
作業列を使わない方法としては、エクセルの「配列数式」のような考え方がスプレッドシートにも存在するならば、上記の考え方を応用することで可能であろうと想像します。
あるいは、スプレッドシートでもスクリプトが利用できたように記憶していますので、スクリプトで解決しちゃうという方法もありそうですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルでエラーを無視して一番左側のセルの値を返したい 2 2023/07/27 13:06
- Excel(エクセル) エクセル・スプレッドシートで、一定数を超えたらゼロから再累計する方法 8 2022/05/28 03:52
- Excel(エクセル) LEFT関数で文字数を指定しないで取りだす方法 7 2023/06/30 09:49
- Excel(エクセル) 皆様、御力をお貸し下さい。。。 スプレッドシートで関数を組みたいのですが、上手く組めません。 ▼抽出 3 2023/02/04 15:49
- Java Java 南京錠 2 2023/02/04 11:46
- Excel(エクセル) この関数の誤りを教えて下さい。 3 2023/08/08 07:36
- Excel(エクセル) スプレッドシートで次の数式を教えて下さい。 4 2023/01/15 14:15
- その他(Microsoft Office) Excel 2列の値を返す数式についてです 1 2022/11/23 22:59
- Excel(エクセル) Googleスプレッドシートの割合の関数と円グラフの並べ替えについて 1 2022/07/22 17:31
- フリーソフト Googleスプレッドシートで特定の言葉が含まれる行の色分けをしたいのですが 4 2022/04/30 15:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelはなんで先頭の0を消すん...
-
Excel元に戻す方法を教えてくだ...
-
【Microsoft Office Excel Comp...
-
Excelが固まってしまった。
-
西暦や和暦の表示をyyyymmdd表...
-
Excel 2019 のピボットテーブル...
-
【関数】スペースがいくつ入っ...
-
【Excel】セル内の時間帯が特定...
-
excelの不要な行の削除ができな...
-
Excelのオートフィル
-
別シートからの文字を変更
-
Excelのセルを飛ばして入力する
-
Excel初心者です。 詳しい方、...
-
エクセルの行の抽出について質...
-
Excel初心者です。 詳しい方、...
-
【マクロ】エクセルにかいてあ...
-
EXACT関数とIF関数の組み合わせ...
-
スプレッドシート クエリ関数 1...
-
エクセルで指定した日付、店舗...
-
Excelのグラフ軸について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル内にある数字の出現回...
-
Excel関数の先頭に「@」が入っ...
-
エクセルの気味悪い不思議
-
Excel VBAで、実行時にsheet上...
-
表示されている人数だけを数え...
-
他人が作ったマクロの理解
-
Excelの関数について質問です。
-
Excel 集計表
-
エクセル 日時の計算式について
-
Excelの関数に関して質問です。...
-
エクセル:セル内の文字列の下...
-
絞り込み検索
-
エクセルの関数で
-
エクセルの書式設定について教...
-
余分なEXCELファイルに印刷され...
-
VBA 同一シート内での転記の仕方
-
長期休みの関数はありますか
-
Excelの空のセル
-
エクセルで入力してある文を別...
-
Excelのマクロで、セルを結合し...
おすすめ情報