FC2ブログ

おジさん学習帳

LibreOffice などOffice ソフトなどについてのブログです
おジさん学習帳 TOP  >  エクセル >  列を詰める

列を詰める

空欄なら 列を 詰める

E列を作業列として、E1セルに
=IF(A1="検索文字",ROW(),"")

A列に 「検索文字」があれば
B列の文字を 表示
A列が 空欄なら 
B列は 非表示 なおかつ 詰める

F1セルに
=INDEX(B:B,SMALL(E:E,ROW()))
と入力し、下方向のセルにコピー

SMALL(E:E,ROW())
下位から数えて 指定した順位に位置する数値
ROW()で F1セルに入力 なので 1から2,3~
E列を調べるので 空欄は 順位にならなく
検索文字列が あるところは 行番号が表示されているので
重複はなく 上からは 少ない数字=下位


ROW()を 表示するセルの条件次第で
(例:IF関数を 考えれば・ほかの関数でも) 
いろいろな 応用ができる

F1セルでない場合でも ROW()-(数字) で 可能
空白セルを削除する

※A1:A100セルの空白セルを削除して上につめる例

A1:A100セルを選択
 ↓
[Ctrl]キー+[G]キーを押す
 ↓
[ジャンプ]ダイアログ
 -[セル選択]ボタンをクリック
 ↓
[選択オプション]ダイアログ
 -[空白セル]オプションボタンをOnにする
 ↓
[選択オプション]ダイアログ
 -[OK]ボタンをクリック
 ↓
A1:A100セルの空白セル上で右クリック
 ↓
ショートカットメニュー[削除]をクリック
 ↓
[削除]ダイアログ
 -[上方向にシフト]オプションボタンをOnにする
 ↓
[削除]ダイアログ
 -[OK]ボタンをクリック
スポンサーサイト



[ 2009年04月06日 21:03 ] カテゴリ:エクセル | TB(0) | CM(0)
コメントの投稿












管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL

カウンター
検索フォーム
ブロとも申請フォーム
QRコード
QR