[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『文字列の抜き出し方』(ランプス)
(1)
A B C
1 1-2 3 6
2 1-3 8 15
3 2-4 10 18
4 3-4 13 20
5 2-3 21 31
6 4-5 25 35
7 3-5 27 42
(2)
A B C
1 1-3 8 15
2 3-4 13 20
3 2-3 21 31
4 3-5 27 42
(3) A B C
1 1 8 15
2 4 13 20
3 2 21 31
4 5 27 42
(1)から(2)のようにA列の3に関する文字が含まれているのを抜き出す方法と
(2)から(3)のように「3」と「-」を消す方法がありましたら教えて頂けませんか?
また、(1)から(3)に出来るようでしたらその方法を教えて頂きたいのです。
よろしくお願いします。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
データ量によっては、関数処理に不向きだったりするんですけど、 実際には 何行x何列 くらいあるんですか?
(半平太) 2015/07/28(火) 19:37
下式を参考にしてください
(1) E1セル =SUBSTITUTE(SUBSTITUTE(IFERROR(INDEX(A:A,AGGREGATE(15,6,ROW($A$1:$A$200)/ISNUMBER(FIND(3,$A$1:$A$200)),ROW($Z1))),""),3,""),"-","") (2) F1セル =IFERROR(INDEX(B:B,AGGREGATE(15,6,ROW($A$1:$A$200)/ISNUMBER(FIND(3,$A$1:$A$200)),ROW($Z1))),"") (3) G1セル =IFERROR(INDEX(C:C,AGGREGATE(15,6,ROW($A$1:$A$200)/ISNUMBER(FIND(3,$A$1:$A$200)),ROW($Z1))),"")
それぞれ下にコピー
<結果図> 行 _A_ _B_ _C_ _D_ _E_ _F_ _G_ 1 1-2 3 6 1 8 15 2 1-3 8 15 4 13 20 3 2-4 10 18 2 21 31 4 3-4 13 20 5 27 42 5 2-3 21 31 6 4-5 25 35 7 3-5 27 42
※E列は文字型になっています。
(半平太) 2015/07/28(火) 21:00
ありがとうございます。
参考にさせていただきます。
(ランプス) 2015/07/28(火) 21:19
無理やりにこのデータの上に何かの文字を1行挿入することは可能でしょうか?
作業が終わった後にその行は削除します。
わかりにくい言い方ですいません
(デイト) 2015/07/28(火) 21:49
ありがとうございます。
ただ、今回は数字を変えても自動で変えるようにしたいので半平太様に教えて頂いた方法で
使ってみるようにします。
(ランプス) 2015/07/29(水) 01:59
すみません。
初歩的な質問なのかもしれないですが数字が「01」と0が前についているのですが変更はどのようにすればよいのでしょうか?
また3を検索すると13もひっかかるようで、困っています。お助け願えないでしょうか?
(ランプス) 2015/07/29(水) 02:03
>数字が「01」と0が前についているのですが変更はどのようにすればよいのでしょうか? >また3を検索すると13もひっかかるようで、困っています。
・・と、断片的に説明いただいても、また他にも見落としがあるかも知れない不安があります。
もう一度、実態に即したサンプルデータと希望する結果を掲示してください。 ※A列(とE列)のデータについてだけで結構です。
(回答側としては、提示された仕様を常識で補完したりもしますが、原則「サンプルが全て」です)
(半平太) 2015/07/29(水) 06:53
すみませんでした。サンプルデータ・希望結果させていただきます。
サンプル(現在の状態)
行 _A_ _B_ _C_ _D_ _E_ _F_ _G_ 1 01-02 3 6 010 8 15 2 01-03 8 15 011 9 17 3 01-13 9 17 004 13 20 4 02-04 10 18 020 21 31 5 03-04 13 20 005 27 42 6 02-03 21 31 7 04-05 25 35 8 03-05 27 42
希望結果
行 _A_ _B_ _C_ _D_ _E_ _F_ _G_ 1 01-02 3 6 1 8 15 2 01-03 8 15 4 13 20 3 01-13 9 17 2 21 31 4 02-04 10 18 5 27 42 5 03-04 13 20 6 02-03 21 31 7 04-05 25 35 8 03-05 27 42
お手数ですがよろしくお願いいたします。
(ランプス) 2015/07/29(水) 09:08
(1) E1セル =IFERROR(SUBSTITUTE(SUBSTITUTE(INDEX(A:A,AGGREGATE(15,6,ROW($A$1:$A$200)/ISNUMBER(FIND("03",$A$1:$A$200)),ROW($Z1))),"03",""),"-","")*1,"") (2) F1セル =IFERROR(INDEX(B:B,AGGREGATE(15,6,ROW($A$1:$A$200)/ISNUMBER(FIND("03",$A$1:$A$200)),ROW($Z1))),"") (3) G1セル =IFERROR(INDEX(C:C,AGGREGATE(15,6,ROW($A$1:$A$200)/ISNUMBER(FIND("03",$A$1:$A$200)),ROW($Z1))),"") ~~↑~~~~~~~ ~~↑~~~ ※他のレイアウトに移植する場合 → 実際の範囲と同じスタート行にする(シート名は一切不要)。 こっちは常に1行目をスタート行にする (シート名は一切不要)
<結果図> 行 __A__ _B_ _C_ _D_ _E_ _F_ _G_ 1 01-02 3 6 1 8 15 2 01-03 8 15 4 13 20 3 01-13 9 17 2 21 31 4 02-04 10 18 5 27 42 5 03-04 13 20 6 02-03 21 31 7 04-05 25 35 8 03-05 27 42
(半平太) 2015/07/29(水) 09:33
ありがとうございます。
参考にさせていただきます。
(ランプス) 2015/07/29(水) 12:35
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.