今、以下のようなデータが並んでいます。
A列----B列
f-1----笙磬同音
t-1----鬱金香
s-1----水馬
t-2----茉莉花
t-3----方頭鯛
s-2----羊蹄
f-2----蓴羹鱸膾
s-3----時鳥
f-3----群龍無首
s-4----香魚
f-4----狷介固陋
t-4----含羞草
s-5----飫肥
s-6----河骨
f-5----寡聞小見
t-5----雛罌粟
s-7----霽月
t-6----膃肭臍
o-1----霙
f-6----漿酒霍肉
A列にはID、B列には漢字のデータが入ってます。
この中から、「f-*(ワイルドカード)」のデータのみを抽出したいのです(>_<)
A列----B列------------C列
f-1----笙磬同音-------笙磬同音
t-1----鬱金香---------
s-1----水馬-----------
t-2----茉莉花---------
t-3----方頭鯛---------
s-2----羊蹄-----------
f-2----蓴羹鱸膾-------蓴羹鱸膾
s-3----時鳥-----------
f-3----群龍無首-------群龍無首
s-4----香魚-----------
f-4----狷介固陋-------狷介固陋
t-4----含羞草---------
s-5----飫肥-----------
s-6----河骨-----------
f-5----寡聞小見-------寡聞小見
t-5----雛罌粟---------
s-7----霽月-----------
t-6----膃肭臍---------
o-1----霙-------------
f-6----漿酒霍肉-------漿酒霍肉
と、「A列に“f-*”のIDを持つB列のデータ」のみを、C列に抽出し、さらに抽出されなかったC列の空白のセルを削除し、
D列
笙磬同音
蓴羹鱸膾
群龍無首
狷介固陋
寡聞小見
漿酒霍肉
と、連続させて並べたいのです。
一連の過程を素早く処理する方法がありましたら、ご指導いただきたい次第です。
よろしくおねがいします<m(__)m>
No.1
- 回答日時:
(1)
C1に
=IF(LEFT(A1,2)="f-",B1,"")
といれてコピーすれば、C1の値は
A1の左から2文字が"f-" なら B1、違えば 空("")になります。
これをC列全体にコピーするとC列のできあがりです。
(2)表全体を選んで データ」フィルタ」オートフィルタ
として、ドロップダウンリストから(空白以外のセル)
を選ぶとC列が空でないところだけ表示されます。
(3)いったんC列を下まで選択します。
このままコピーすると空白行が含まれてしまうので
「可視セルの選択」ボタン(ない場合は下の補足参照)
もしくは「Alt」+「;(セミコロン)」で
選択範囲を見えているところだけに限定しておいてから、
コピーします。
(4)表全体を選んで データ」フィルタ」オートフィルタ
として、オートフィルタを解除します。
(もしくはオートフィルタのドロップダウンリストから
すべて表示、を選びます)
(5)D1 を選んでペーストします。
(6)C列に式があるままだとまずい場合
C列を選択してコピー、編集メニューの
「形式を選択してペースト」で「値」のみを
ペーストしておきます。
(他にコピーペーストした場合に変な値に変わらずにすみます。)
------------------------------------------------
※ 補足
「可視セルの選択」ボタンを次のようにして
使えるようにしておきますと便利でしょう。
表示」ツールバー」ユーザ設定の「コマンド」タブで
分類「編集」の「可視セルの選択」のコマンドを
ツールバーの好きなところにドラッグします。
------------------------------------------------
★ C列はいらないなら、次のようにした方が速いです。
(1)は とばして、
(2)表全体を選んで データ」フィルタ」オートフィルタ
として、ドロップダウンリストから(オプション)を
を選び、「f-」「から始まる」と条件をいれると、
C列が空でないところだけ表示されます
(3)で選ぶのはB列になりますが以下は基本的に同じ
(6)は不要になります。
返信遅くなってすいません(>_<)
何とかできました!
(3)~(4)辺りで、少し躓いたのですが、可視セルのみを選択した後「コピー→D1に貼りつけ→オートフィルタを解除」とすると、D列に希望のデータが連続で並びました!
最初「可視セル選択→コピー→オートフィルタを解除→D1に貼りつけ(しようとしたけど出来ない!?)」と、戸惑ってしまいましたが・・・(^_^;)
貴重なご指導ありがとうございます!
No.3
- 回答日時:
おまけで「フィルタオプションの設定」を使った方法もついでに覚えておくとよいですよ。
(D列だけですが)リスト範囲 $A$1:$B$21
検索条件範囲 $F$1:$F$2
抽出範囲 $D$1
参考まで
No.4
- 回答日時:
[回答番号:No.3]の場合、次のようにしてもOKです(やや高級?)
セル F1 を空白(何も入力しない)
セル F2 に式 =LEFT(A2,1)="f" を入力
No.5
- 回答日時:
マクロでよければ
Sub test01()
With Sheets("Sheet1")
For Each c In .Range(.Range("A1"), .Range("A1").End(xlDown))
If c.Value Like "f-*" Then
i = i + 1
.Cells(i, "D").Value = c.Offset(0, 1).Value
End If
Next
End With
End Sub
でいかがでしょう?
No.6ベストアンサー
- 回答日時:
No5 merlionXXです。
先ほどの回答ではC列へのとびとびでの抽出を省略してしまいまいsたが、もしC列も表示が必要であれば以下のようにしてください。
Sub test02()
With Sheets("Sheet1")
For Each c In .Range(.Range("A1"), .Range("A1").End(xlDown))
If c.Value Like "f-*" Then
c.Offset(0, 2).Value = c.Offset(0, 1).Value
i = i + 1
.Cells(i, "D").Value = c.Offset(0, 1).Value
End If
Next
End With
End Sub
いつも私のExcelの質問に回答していただきありがとうございます!
回答していただいた2つのマクロ、どちらも実行してみたところ、どちらも上手くいきました!
こんなに簡単に「データ抽出→並べ替え」が出来るとは・・・マクロを書かせたらmerlionXXさんの右に出るものはいませんね、恐れ入りました(^_^;)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelの関数でこんな処理ができますか 1 2023/02/08 13:46
- Excel(エクセル) Excelの列から検索して該当する行を別シートに転記するVBA 2 2022/12/20 09:35
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 3 2022/06/12 11:17
- Visual Basic(VBA) vba 重複データ合算 5 2023/07/05 18:55
- Excel(エクセル) Excel>マクロ>特定のセルで同じ情報が登録されている行を1行にまとめたい(文字連結) 6 2023/01/05 16:30
- Visual Basic(VBA) 配列の勉強をしています。使用する変数の意味、検索条件の書き方が難しいです。 2 2022/09/15 14:06
- 数学 線形代数学の問題です! Vは 4 次元ベクトル空間とし線形変換 f ∶ V→ V のある基底 v1, 1 2022/06/12 09:25
- Visual Basic(VBA) Sheet3から2つの条件でオートフィルターで抽出した個数をSheet2へ入力するマクロで、一つ目の 4 2023/01/12 23:40
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル初心者です 関数の入れ...
-
Microsoft1Officeの互換ソフト...
-
Excel ピボットテーブルで日付...
-
エクセル関数を教えてください
-
【マクロ】その時、その時で変...
-
【マクロ】読取専用のファイル...
-
LOOKUP関数を使えばいいのでし...
-
エクセル 白黒印刷で白線を印刷...
-
【関数】先頭だけにある、半角...
-
【関数】適切な文字数の数字を...
-
Excelのチェックボックスの使い...
-
エクセルでの作業計算方法について
-
Excelのpivotについて質問です
-
WPS OFFICEでの縦書きについて
-
時間によってファイル名が変わ...
-
エクセルのセルに同じ大きさの...
-
Aというブックの1というシート...
-
エクセルの順位別一覧表の自動...
-
西暦や和暦の表示をyyyymmdd表...
-
【マクロ】エクセルにかいてあ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報