• 締切済み

エクセルで同種の文字列の抽出をしたい

ランダムに並んだ数字(1~9)が11個有ります。 例えば 61578293357 という具合です。 一方 エクセルのシート1に 同じようにランダムに膨大な数字が並んでいます。 C8からIU5000までです。 この膨大な数字群の任意の範囲から 例えば「H8~R5000」の範囲から 上記の6157829335と同じ数字の並びをシート2に抽出したいのですが どのようにすればできますか? 当方 関数などにも疎いPC初心者ですので できるだけ分りやすくご教示をお願い致します。

みんなの回答

noname#17648
noname#17648
回答No.4

#2です。 もうひとつ確認させてください 検索の条件ですが、 同一行の右方向 でよろしいのでしょうか? C8が基点の場合、 C8:J8が、該当数字 D8が基点の場合、 D8:K8が、該当数字 であるということ。 要するに、IO列が基点にならない (右方向に8文字取れないから) ということでしょうか?

heisenberg
質問者

お礼

ご回答 ありがとうございます。 検索条件は 同一行の右方向で結構です。 ですから 仰られる通り 基点になれるのはIN列までということになります。 PC初心者ですので エクセルについても 何とか基本的な作表はできるものの さまざまな設定などには疎いです。#2さんが「これなら こうした方がいいんじゃないか。」とか「それなら この方がいい。」とか そうしたことがお有りでしたら 是非 そうした方向でやって頂きたいとおもいます。以前の補足回答でも述べましたように「8個の数列と同じ数列の位置」を割り出すのが目的です。その行番号も併せて分ればありがたいです。

noname#17648
noname#17648
回答No.3

出社前なので取り急ぎ回答します。 仕様は分かりました。 1.11個の数字は その都度 シート上の任意の箇所を移動させます。 --この数字は、場所が固定されていないと出来ません。 セルを固定できませんか。 3.任意の範囲は その都度 自由に決めています。 --こちらも、範囲を固定できないと出来ません。 ----------- マクロを使うにせよ、1.や3.が変化されてしまうと、 その都度マクロを変更しなければなりません。 たとえば、1.や3.の情報がどこかのセル (A1とB1とかに)に書いてあれば何とかなりそうですが、 やはり、固定されていないと、実現は無理ですね。 範囲を多めに取るとかで対応(固定に)できないのですか?

heisenberg
質問者

お礼

再度のご回答 ありがとうございます。 1.「セルを固定できませんか」  もし 目的が実現できるのなら 固定しても構いません。 3.「こちらも、範囲を固定できないと出来ません。」  後で思ったのですが 「任意の範囲」を「シート1全体」としてはどうでしょうか?そうすれば 範囲は「シート1全体(具体的にはC8からIU5000まで)」となって結果的に範囲は固定されます。 以上を踏まえて お伺いしたいのですが次のようなことはできますか? △8個(11個では不都合が生じますので8個にします)の数字から為る数列をシート上に固定する。 △そして シート1の全体(実際はC8からIU5000まで)を検索対象として 8個の数字から為る数列と同じ数列を含む行を全てシート2に抽出する。 要は「8個の数字がランダムに並んだ数列と同じ数列を含む行を抽出する」ということですので この目的が達成できるのなら 様々な設定はh2006401さんでご自由になさって構いません。どうか宜しくお願いいたします。

noname#17648
noname#17648
回答No.2

補足要求 1.ランダムに並んだ数字(1~9)が11個有ります。 --どこに有るのですか シート上のセルですか セルとしたら、どのセルですか 2.ランダムに膨大な数字が並んでいます。 C8からIU5000までです。 --1つのセルには、数字は一桁ですか 3.任意の範囲から  任意の範囲は、どのように指定されているのですか また、どのように指定するのですか 4.シート2に抽出したいの 抽出するのは、どんな情報ですか。 また、どのセルに何を抽出するのですか おそらく、11あるランダム数値があるセルの位置を調べたいのだと思うのですが、セル1つに1桁の数値だと、結構検索は大変だと思います。(出来ないことは無いと思うけど)

heisenberg
質問者

お礼

ご回答 ありがとうございます。補足質問にお答えします。 1.11個の数字は その都度 シート上の任意の箇所を移動させます。 2.一つのセルに数字は1個だけ入っています。ですから11個の数字は11個のセルに入っています。 3.任意の範囲は その都度 自由に決めています。 4.シート2に抽出する情報は「11個の数字と同じ並びの数列が含まれるセルの位置と そのセルを含む行の行番号」です。これをシート2のA3以下に抽出したいのです。 これでは分りにくいと思いますので 私が現在 行っている作業を可能な限り詳細に述べて 何をしたいのかを理解して頂きたいと思います。 1.シート1のC8からIU5000まで ランダムの数字の列が並んでいます。 2.そのシート1の6行目の任意の範囲に11個の数字を貼り付けます。例えばL6~V6にです。 3.その11個の数字の下の行 つまり7行目にオートフィルタを付けます。 4.オートフィルタで 11個の数字と同じ数字をクリックして その同じ数字の含まれる行を抽出します。 5.11個の数字について 順次 この作業を繰り返します。 6.すると 最終的に 11個の数字と同じ数列を含む行が残ります。 7.この行を抽出するのが目的です。 現在は この作業を 「手作業」でやっています。これを関数などで 自動的に抽出することができないか・・・という訳です。 但し 時には 11個の全部の数字についてこの作業を行うまえの段階 例えば 9個までの数字の段階で行が尽きてしまうことがあります。 ですから この「11個」というのは「8個」または「9個」にしたほうがいいかと思いますので そのようにお考え下さい。 なにやら 分りにくい質問で恐縮ですが 上記に述べた作業を 「オートフィルタを使っての繰り返し作業」でではなく もっと簡単にできないか・・・という訳です。「おそらく、11あるランダム数値があるセルの位置を調べたいのだと思うのですが・・・」との末尾のコメントは まさにその通りです。それを関数などでできないか・・・ということです。宜しくお願い致します。補足質問はご遠慮なくどうぞ。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

同じ数字ならば、抽出する必要は無いのでは、 件数をカウントするだけなら =COUNTIF(Sheet1!H8:R5000,61578293357) で件数はわかります。

heisenberg
質問者

お礼

ご回答 ありがとうございます。 件数ではなく その数列を含む行とセルの位置を知りたいのです。 数字が一つのセルに入っていればCOUNTIF関数で重複セルを見つけられるようですが この場合 一つのセルに一個の数字 つまり11個の数字は11個のセルに入っていますのでCOUNTIF関数は使えないのです。 何か いい方法があれば・・・と思っているのですが・・・。

関連するQ&A

  • Excel特定の文字列を抽出する関数を教えてください。

    A列に***AAA/2桁の数字***と言う値があります。 *はランダムです。 2桁の数字もランダムです。 AAA/2桁の数字のみを抽出する関数を教えてください。 重複する値は、1つを残して削除したいです。 よろしくお願いします。

  • 特定の列の最初にあるデーター抽出

    Sheet1のB5からB65までのセルにランダムで数字が入れてありますが必ずどのセルにも数字が入っているわけでは無く空白のセルも数字の入ったセルも混在しています。 この列の最後の数字をSheet2の任意のセルに抜き出すには、Lookup関数でできますが、列の最初の数字を抜き出すにはどのような関数で行えるのか教えてください。

  • ms エクセル 2003で複数データーの抽出

    ms エクセル 2003で複数データーの抽出貼り付け (例)下のようにA1セル縦にランダムに数字が並んでいます。この縦に 並んでいる数字をB1~B6に任意の範囲に並べる式又は関数をおしえて   A        B               ください。 1 6 16 26 36    1~8までを横に並べる(1 3 5 6 8 )―――例 2 8 18 28 38 12~16までを横に並べる(     ) 3 2 12 22 32 42 11~23までを横に並べる(     ) 4 3 13 23 33 43 20~31までを横に並べる(     ) 5 5 15 25 35 33~39までを横に並べる(     ) 6 1 11 21 21 41 36~43までを横に並べる(     )

  • エクセル関数を使って、ランダム抽出をしたいです

    エクセル関数を使って、ランダム抽出をしたいのですが どの関数を使用すればいいのかわからないのです。 現在、1つのシートにいろいろなデータが入っているのですが、 D列のデータを使い、そのデータをランダムに25件抽出したいのです。 よろしくお願い致します。

  • エクセルで数字が入ったセルの値を抽出

    任意1行中のある1列にFALSEと1列だけ数字が入っています(下図参照)。その数字を抽出する関数があれば教えて下さい。 下図の例では、Fの列にB2:E2の範囲の数字「10」を抽出したいのです。マクロを組めば可能なのですが、セルに入力する関数等で簡単に実現できればと思います。 アドバイス宜しくお願いします。

  • EXCELで乱数を使用し重複しない整数を抽出したい

    EXCEL2010を使用しています。 ・任意の数値より一部の数値を取り出す ・「任意の数値」は複数範囲でも可能のもの ・ランダムに取り出される整数 ・抽出する個数もランダムで指定したい ・VLOOKUP関数、HLOOKUP関数と組み合わせたい ・横に並べて抽出する場合と縦に並べて抽出する場合の関数をそれぞれ知りたい 上記の条件をすべて満たす方法を模索しましたが、このような使い方をする場合の応用がわからず困っています。 理解の難しい条件だとは思いますが、策を講ずることが出来る方がいらっしゃいましたら、出来る限り早急に回答をお願いします。 http://okwave.jp/qa/q7670173.html の質問に幾つか条件を足したものだと考えていただければと思います。

  • EXCELである範囲内での最大値の抽出方法

    こんばんは。 Excelのデータでランダムな数字が1列にあります。 そのなかで 100番台で一番大きい数字を抽出したいときは どのような関数を使えばいいでしょうか? max関数がいいでしょうか? 教えてください。

  • 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を入力すると特定の仕様が一回で別表に抽出できるような方法が御座いましたら、そちらも合わせてお願いしたいと思っております。 長々と書き綴り、大変申し訳御座いませんが、宜しくお願い致します。

  • エクセル関数(抽出)について

    宜しくお願い致します。 A列にランダムな数字が入力されている。(重複する数字はない) B列にランダムな数字が入力されている。(重複する数字がある) ここで、A列のセルの数字をB列の任意値分全部抽出したいのです。    A   B 1 815  9 2 330  8 3 209  6  4 110  9  5  24  9 6 782  5 7   3  9 これを以下のようにする方法を教えて下さい。 9 815 9 110 9  24 9   3 ※このA列の”9”もセルの中で指定したいのです。

  • エクセルでのデータ抽出について

    いつもお世話になっております。 以下の操作についてご教示をお願いいたします。 使用しているエクセルは2007です。 Sheet1 A列:2010年~の日付(昇順に記載し、発生日はランダム)が記載され、 B列以降は日付に対応したデータが記載された表が有ります。 Sheet2に同じ表の形式で2013年以降のデータを抽出したいのですが。 どのような方法がありますでしょうか? INDIRECT関数なんかを使って試行錯誤したのですが・・・わかりません。 どなたかご教示をお願いいたします。

専門家に質問してみよう