[[20250901150719]] 『式を詰めて表示したい』(エマ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『式を詰めて表示したい』(エマ)

EXCELの式の結果がデータなしの場合、式を上につめて表示したいです。

B29:B33 まで以下の式が入っています。

B29 =IF(VLOOKUP(sheet1!I1,sheet1!A4:W123,17,FALSE)=0,"",VLOOKUP(sheet1!I1,sheet1!A4:W123,17,FALSE))

B30 =IF(VLOOKUP(sheet1!I1,sheet1!A4:S123,8,FALSE)=0,"","日時:"&TEXT(VLOOKUP(sheet1!I1,sheet1!A4:S123,8,FALSE),"yyyy年mm月dd日"))

B31 =IF(VLOOKUP(sheet1!I1,sheet1!
A4:S123,19,FALSE)=0,"",VLOOKUP(sheet1!I1,sheet1!A4:S123,19,FALSE))

B32 =IF(VLOOKUP(sheet1!I1,sheet1!A4:S123,18,FALSE)=0,"",VLOOKUP(sheet1!I1,sheet1!A4:S123,18,FALSE))

B33 =IF(VLOOKUP(sheet1!I1,sheet1!A4:W123,20,FALSE)=0,"","テーマ:"&VLOOKUP(sheet1!I1,sheet1!A4:W123,20,FALSE))

sheet1からvlookupでデータを取り出しているのですが、sheet1に必ずすべてのデータが入っているわけではなく、空欄(式で空欄になっているわけではなくデータが入っていない状態)になっている場合があります。

例えば、B29行とB32行はデータが表示されていても、B30、B31、B33の行は空欄になってしまいます。
これを上につめて表示することはできないでしょうか。
よろしくお願いいたします。

< 使用 アプリ:Excel2024、使用 OS:Windows11 >


 例えば上記式をC29セルからC33セルに入力して、B29セルに
 =FILTER(C29:C33,C29:C33<>"")
 と入力するとB29セルから下に空欄でない結果だけが詰めて表示される。

 式を入力するセルと最終結果を表示させたいセルを分けてはどうだろうか?
(ねむねむ) 2025/09/01(月) 15:37:19

 ちょっと読み違えていました。失礼しました。

(xyz) 2025/09/01(月) 15:42:53


XLOOKUPとFILTERを組み合せれば、なんとかなるのでは?

参考
https://manabi-info.com/excel-0133/
(ゆたか) 2025/09/01(月) 15:44:32


ねむねむさん、ありがとうございます。

式を入力するセルをY29:Y33にして(結果の文字列がC列〜M列くらいまで表示されるため)、教えていただいた式を「=FILTER(Y29:Y33,Y29:Y33<>"")」にして、B29セルに入力したのですが、B29が#スピル!「スピル範囲が空白ではありません」と表示されました。
検索してみたのですが、解決方法がわからず、ヒントを教えていただけると助かります。

ゆたかさん、ありがとうございます。
これから試してみます。

(エマ) 2025/09/01(月) 16:25:37


 B29セルより下のセルに式なり値が入っていないだろうか?
 B30セルからB33セルまでをクリアしてみてくれ。

 スピルというのはEXCEL365以降で追加された新機能で一つのセルに入力するだけでその下、
 または右にまとめて表示される機能。
 ただその表示範囲にすでに値が入力されているとそのエラーとなる。
(ねむねむ) 2025/09/01(月) 16:30:22

ねむねむさん、ありがとうございます!

B30からB33まで前の式をいれたままでした。
ばっちりできました。
勉強になります。
本当にありがとうございました。
(エマ) 2025/09/01(月) 17:04:22


コメント返信:

[ 一覧(最新更新順) ]


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