• 締切済み

特定の記号の数による、任意の文字行からの抽出。

文字行がありB2からB15まで、A列の記号で表しています。文字行は任意です。 B列の文字行を特定の記号の数で抽出するとB2からB8までをC列からG列までのように表せます。 A列  B列     C列    D列  E列   F列   G列 1記号・ 文字行 抽出記号    2〇・・△△〇・・・〇・・・・・〇・・・・・〇・・・・・△△・・・〇                3△・・△△〇・・・〇・・・・・〇・・・・・〇・・・・・〇・・・・・△△                  4凵・・凵〇〇・・・凵・・・・・凵・・・・・凵・・・・・〇〇・・・〇〇                   5И・・凵И△・・・凵・・・・・凵・・・・・И・・・・・凵・・・・・凵                6・・・・И△△・・・И・・・・・△△・・・△△・・・И・・・・・И 7・・・・△△△・・・△△△・△△△・△△△・△△△・△△△      8・・・・凵И△・・・△・・・・・И・・・・・凵・・・・・凵・・・・・凵 /・・・・ 15・・・ 特定の記号の数:4種 B2:B8で、列に 1)〇が総数2コ 2)凵が2コ 3)Иが1コ で、 空白なしとします。 こんな文字行があり、特定の記号の数を1)2)3)とすると、C列からG列のようになります。 文字列に空白がない、こんな抽出をしたいのですが、 このような抽出はどうすればよいでしょうか、どなたか教えていただけませんか。 よろしくおねがいします。

  • botop
  • お礼率76% (10/13)

みんなの回答

noname#204879
noname#204879
回答No.1

貴方が書いた説明はとても難解です。(私には支離滅裂な漢字がします) 間違いがないか、もう一度見直してみてください。 》 1)〇が総数2コ 》 2)凵が2コ 》 3)Иが1コ 上の「総数」はそれぞれどのセルとどのセルの各記号を合計したものすか?

botop
質問者

お礼

ご指摘ありがとうございます。 総数というのは、B列の文字行の記号〇はセルB2.B3.B4に計4コありますが、 その中の2コを抽出ということを意味するために使用してます。 凵を2コ, Иを1コというのも、 B列の文字行の凵3コ.И3コからの抽出数です。 B列の文字行の中から〇を2コ,凵を2コ,Иを1コ,空白なしで、 B列の文字行から抽出しようとしています。 抽出するとC列,D列,E列,F列,G列のようになります。 こういう抽出は、エクセルは苦手なのでしょうか。 B列の文字行をB2:B8までとして、お解かりでしたら教えていただけませんか。 よろしくおねがいします。

botop
質問者

補足

説明がたりないのか、考えた抽出ができない質問だったのか、わからないのですが、 回答されないので質問をちょっとかえてみました。 こんな抽出ではどうでしょうか。 A列  B列C列D列  E列 F列 G列 1記号・ 文字行  抽出記号    2〇・・△△〇・・・ 〇・ 〇 ・ 〇 ・ 〇 ・ 〇 ・ △1・ △2・ 〇 ・ 〇               3△・・△△〇・・・ 〇・ 〇 ・ 〇 ・ 〇 ・ 〇 ・ 〇 ・ 〇 ・△1 ・△2               4凵・・凵〇〇・・・ 凵・ 凵 ・ 凵 ・ 凵 ・ 凵 ・ 〇2・ 〇3・ 〇2・ 〇3   5И ・・凵И △・・・ 凵・ 凵 ・凵 ・ И ・ И ・ 凵 ・ 凵 ・ 凵 ・ 凵               6 ・・・ 凵И △・・・ △・ И ・ И ・ 凵 ・ 凵 ・ 凵 ・ 凵 ・ 凵 ・ 凵     7・・・ И △△・・・ И・ △2・ △3 ・ △2・△3・ И ・ И ・ И ・ И /・・・・ 文字行を1)2)3)で抽出します。 B列を文字と数値で、C列以降に表します。 文字行は任意です。 特定の記号の数:4種とし, 1)2)3)とします。 1)○の2コを取り出し。 2)凵の2コを取り出し。 3)Иを1コの取り出しとし、空白なし△1△2△3で表わし重複も数値123で表します。 このような抽出を考えています。 どのようにすればよいでしょうか。教えていただけませんか。

関連するQ&A

  • 【エクセル】特定の文字列(番号)の行だけ抽出したい

    現在資料を作っていて、またもや困ったことがあったので教えてください。 特定の文字が含まれる行のデータを抽出するにはどうしたらいいのでしょうか。 具体的にいうと ____|A|B|C|D|E| [01]|F|1|0|3|5| [02]|G|0|2|5|7| [03]|H|0|3|4|8|    中略 [21]|F|0|0|9|6| [22]|G|6|4|5|1| [23]|H|3|3|2|2|    中略 [31]|F|2|2|4|6| [32]|G|5|3|7|9| [33]|H|8|2|6|4|    以下略 *[]の中身は行番号 一番上段のA B C D Eは列の軸 |はセルの区切りを示している のような表でGのBのところ(行番号が10n+2のところのA列)だけのデータを合計したいのです。 つまり上の表でいえば =A2+A22+A32+A42+A52…(=0+6+5+…)ということをしたいのですが 数が600行近くあるので手入力だとかなり面倒くさいのです。 SUM関数を使うのかなとも思いましたが、それでもセルの指定の面倒くささは変わらないし… 何か簡単にできるようにする方法がありましたらご教授お願いします。

  • PHPで任意の数の行抽出

    PHPで下記のような文字列がありますが、 この文字列から先頭2行抽出して画面に表示したいのですが、 調べてみてもいい例がありませんでした。 各3種類の改行コードからの各先頭2行抽出方法です。 $a="文字列1\r\n文字列2\r\n文字列3\r\n"; $b="文字列1\r文字列2\r文字列3\r"; $c="文字列1\n文字列2\n文字列3\n";

    • ベストアンサー
    • PHP
  • 同じ様式の表の複数シートから行ごと抽出

    A2:K12の範囲に表がある全く同じ様式のシートが複数あります。 特定の条件が満たされた行を全て別シートに抽出したいです。 1列目と2列目とX列目(これは集計のA1セルに入った値を参照)が空白でない行を全て抽出したいです。1列目と2列目は1行目から順番に埋まっているのですが、X列目は空白になっているものと空白でないものが混在しています。 たとえば、Xが10列目のときは、Aさん、Bさん、Cさん、Dさん、Eさんの行が抽出されるようにしたいです。 VBAのコードを自力で書けないので、よろしくお願いします。

  • 文字列の抽出について

    A列に 500行位の文字列があり、 その行の中から以下を抽出したいです。 ただ、抽出したい文字列は、0123456で始まり、abcdという文字列まで。 しかも改行されています。 ※抽出したい文字列 【A列 0123456 ~ B列 abcd】という文字列 【F列 0123456 ~ B列 abcd】という文字列 A列 0123456 B列 xxxx abcd C列 1111 D列 2222 E列 3333 F列 0123456 G列 xxxx abcd H列 4444 I列 5555 J列 6666 宜しくお願い致します。

  • 文字列の数抽出、行挿入マクロ

    急きょ下記処理を実施することになったのですが、本やネットで下記処理ができるような マクロを色々探していもなかなか見つからず…。(T_T) どなたか詳しい方がいらっしゃいましたら教えていただけませんでしょうか? ・A列に特定の文字列(;)があった場合、その列をコピー。 ・その列の下に文字列(;)の数と同数の行を挿入。 ・挿入した行のAセルに、文字列(;)のすぐ後ろの1ケタを貼り付け。 ・(挿入行が2行の場合) さらに下に挿入した行のAセルに、左から2つ目の文字列(;)の  すぐ後ろの1ケタを貼り付け。 なお、A列の行数は、現時点で500行ほどあり、今後増える可能性もあります。 【処理する前】       A列      B列    C列 1行目  1;32     555   AAA 2行目  29;1;4   222   GGG 3行目  600      111   FFF 【マクロ実行後】       A列    B列   C列 1行目  1     555   AAA 2行目  32    555   AAA 3行目  29    222   GGG 4行目  1     222   GGG 5行目  4     222   GGG  6行目  600   111   FFF どうぞよろしくお願いいたします。

  • EXCEL 文字列条件抽出

    特定の文字列を検索条件として別シートに抽出する方法を御教授願います。 使用する関数はLEN,MID,LEFT,ISERR,もしくはワイルドカードなどを使用すればいいのかと考えておるのですがいまいちやりたいような数式を組めず悩んでおります。 やりたいことを言葉で表現するならば以下のような感じとなります。 「sheet1のF列に<107>という文字が含まれていた場合」 ・顧客別シートのD列に顧客ごとに分けて抽出 ・含まれていない場合、抽出しない と、単純なことなのです。が、制約がある為にうまくいきません。 制約は以下となります。 ・検索対象の文字列が以下のように決まった形ではない。 (1)A-BB-107○#----- (2)A-BB-107○#----- (3)ABB107○C #----- (4)ュウリABB-107○#----- (5)ュウリABB107○#----- (6)BB-107○C-D9#-----  など、その他にも数種類存在。(○部分には違う数字が入ります) ・上記でも分かるように<107>が始まる文字列の位置が決まっていない。 という具合です。 操作しているブック構成は下記のとおりです。 ・sheet1・・・参照用シート 4行目 /D列・・・顧客No / E列・・・顧客名 / C列・・・製品仕様 (A列,B列,G~AD列まで使用中) 5行目 / 1 / A / A-BB-107○#----- 6行目 / 2 / B / ュウリABB-107○#----- 7行目 / 1 / A / BB-107○C-D9#----- 8行目 / 3 / C / A-BB-107○#----- 9行目 / 3 / C / BB-107○C-D9#-----  10行目 / 4 / D / A-BB-107○#----- (会社のサーバーで管理している情報がそのままエクセルに打ち出されたシート。 情報量として約1000行ほど) ・sheet2,3,4,5(開始行,項目列は同じ位置)・・・特定の顧客別ごとに分け、特定の製品仕様だけを抽出したシート(参照用から引用)。 4行目/ B列・・・顧客No / C列・・・顧客名 / D列・・・製品仕様 5行目 / / A-BB-107○#----- 6行目 / / ュウリABB-107○#----- 7行目 1 / A / BB-1234C-D9#----- 8行目 / / A-BB-1115#----- 9行目 / / BB-107○C-D9#-----  10行目 / / A-BB-3498○#----- 特定の顧客NoをB列(一つのセルになってます。C列も同様一つのセルになってます)に入力すると、製品仕様すべてを抽出するように作成したシート。このシート内のG列から新たに表を作成し<107>の文字列が含む製品仕様を抽出しようと考えております。 出来れば、このような一度段階を踏んでから特定の仕様を抽出するのではなく各シートに対象となる顧客Noを入力すると特定の仕様が一回で抽出できるようなシートを作成したいのですが、関数初心者の為、うまく組めずこのような形となりました。(現在、参照用シートに作業列を作り対応。作業列ばかりが増えて正直困っているのも確かなのです) 【御教授頂きたいこと】 ・<107>の文字列を条件として別表に抽出する関数の数式 です。 また、出来ればでいいのですが、 ・顧客Noを入力すると特定の仕様が一回で別表に抽出できるような方法が御座いましたら、そちらも合わせてお願いしたいと思っております。 長々と書き綴り、大変申し訳御座いませんが、宜しくお願い致します。

  • 複数セルから特定の文字を検索して、その対象セルを抽出したい

    エクセルで関数、VBAを使用して、下記のようなDATA抽出を行ないたいのですが、どなたか、ご指導いただけないでしょうか。 たとえば、2種のシートが、各々、 <シート1>   列A   列B 行1 A1 ABCD-123 行2 B23 EFGH-456 行3 C456 あいうえお <シート2> 列A 列B 列C  列D  列E 行1 A1 A2 A3 行2 B23 C5 A4 行3 A5 B2 C456 ・・・・・・・となっている場合、 <シート2> の列D  行1 へ "A1"と入力(記載)がある場合、列Eに   ”ABCD-123”と表示(抽出)を行ないたい。 セルには、文字、数字、記号が入ります。 よろしくお願い致します。

  • 質問:特定文字列から空白行までの抽出

    質問:特定文字列から空白行までの抽出 お世話になります、ネットで公開されているVBAを修正して何とかなっているVBA初級者です。 毎月excelで出力されたファイルを元に関数で整形したと思っていますが、”北棟2”の開始 するセル位置は解っているのでそれを基準に利用するのは簡単ですが、7777村上まで(空 白があるまで)を抜き出して"sheet_work"もしくは"北棟2"とういうsheetのB8セルに貼り 付けたいと考えています。 北棟2だけではなく、空白に挟まれた行は毎月変動するために関数でのセル指定が役に立ちま せん。この場合、北棟2、南棟1、西棟2、東棟1、東棟3といた文字列の次の行のA,B,C列 から空白が発生する行までを整形しやすいsheetか文字列通りのsheet名のB8セルに貼り付ける 方法が御座いましたらご教授お願いいたします。関数だけで力業で可能でしたらそちらもお教 えお願いします。 以下が出力されますが、空白から空白までは一定では無く、増減します。 小計の行は不要です。      A   B  C 5   xxxxxx名   日付  6   7       北棟2 8   1111 鈴木  5 9   2222 武田  5 10   11200 山田  5 11   4444 高橋  4 12   5555 佐藤  5 13   6666 小林  4 14   7777 村上  0 15    16       小計  28 17   18       南棟1 19   1001 中村  4 20   1002 伊藤  5 21   1003 吉田  4 22   20110 佐々木  5 23   1005 木村  3 24   1006 渡辺  0 25   1007 田中  4 26   27       小計  25 28   29       西棟2 30   10020 森  2 31   2010 岡田  1 32   2033 池田  0 33   2058 井上  5 34   35       小計  8 36   37       東棟1 38   7854 石田  4 45       東棟3 46   4471 石岡  2

  • エクセル フィルタオプションで 特定の文字列を含む行を全て抽出する方法がわかりません

    エクセル2002を使用しています。 エクセルフィルタオプション設定で、特定の文字列を含む行を全て抽出する方法がわかりません。 たとえば sheet1    A    B    C    1 項目1 項目2 項目3  2  あ   い    う    3  う        あ    4  え        い 5      う       Sheet2   A         B         1 抽出文字列 2 あ  3   4 (計算式) 5 (以下抽出結果)   上記のようなデータがあり、sheet2!a5以降に「あ」が該当する行を全て抽出するといった式を組みたいのですが、 Sheet2 a2に抽出文字を入力し、a4に「=or(sheet1!a2=a2,sheet1!=a2,sheet1!=a2)」といった検索条件式を組み、フィルタオプションで、 ・リスト範囲 Sheet1!$a$1:$c$5 ・検索条件範囲 $a$3:$a$4 ・抽出範囲 $a$5  と指定するのですが、うまく抽出できません。 ちなみに抽出対象が文字列でなく数字なら(たとえばSheet1のデータの文字をあ→1 い→2のように全て数字に置き換えてSheet2!a2に1を入力)抽出できるのですが・・・ 文字列をセル参照して条件式を組む場合に何か気をつけることがあるのでしょうか?文章が長くなってしまい申し訳ありません。良い方法があればご教授お願いします。

  • エクセル 特定の文字列を抽出・挿入

    例えば A列にあるセルの中から特定の文字列を検索・抽出して、その特定の文字列だけB列に挿入していく関数はありますか? またはA列にあるセルの中から特定の文字列に挟まれた文字列を検索・抽出してその特定の文字列だけB列に挿入していく関数はありますか? マクロを組まないと難しいのでしょうか?

専門家に質問してみよう