• ベストアンサー

指定文字 ( と、指定文字 )の間の文字を抽出

エクセル又はアクセスで、指定文字 ( と、指定文字 )の間の文字を抽出の方法が知りたいです。横列に長い文があり、その中の カッコ 例(12345)の、12345の部分を抽出したいのですが、方法をお教えいただけませんでしょうか? ()が、指定文字です。縦列には数百あります。

質問者が選んだベストアンサー

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

エクセルの一例です。 A列がデータ、括弧記号は半角、以下の数式を任意セルに入力、下方向にコピー 括弧がない場合は、空白としています。 =IF(COUNTIF(A1,"*(*)*"),MID(A1,FIND("(",A1)+1,FIND(")",A1)-FIND("(",A1)-1),"") 因みに抽出結果をデータとしたい場合、抽出結果範囲をコピー→貼り付け先で形式を選択して貼り付け→値を選択→OKとして下さい。

kurounin777
質問者

お礼

ありがとうございました。このように考えて組み立てるのですね。思いつきませんでした。助かりました。初心者なので、またご教授お願いします。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

・関数で出す ・プログラムで出す ・プログラムでも正規表現という仕組みを使う ・検索のソフトなどでこういうタイプが出来るものを使う などあると思います。 ーーー 質問者のレベルがどのへんかわからないが。 1つ(()内1組だけ)だけなら何とか関数で出来る。 例文 A1セル あす集合時刻(10:00)に間に合うように公園に集合 式 =MID(A1,FIND("(",A1),FIND(")",A1)-FIND("(",A1)+1) 結果 (10:00) 但し( や )がない場合の手当てをすると式が長くなる。 又(と)のペアでない場合とかをチェックも。 =IF(AND(COUNTIF(A1,"(")>0,COUNTIF(A1,")")>0),"","X")を前にかぶせて、”X”のところに上記の式を挟む。

kurounin777
質問者

お礼

参考になりました。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

このようなケースではワイルドカードを使った置換を利用するのが簡単です。 対象範囲を選択して、Ctrl+Hで置換ダイアログを出して、検索する文字列に「*(」置換j後の文字列には何も入力せず「すべて置換」します。そのままもう一度、検索する文字列に「)*」と入力して「すべて置換」すればご希望のデータになっています。

kurounin777
質問者

お礼

確かに置換でも簡単にできますね。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 指定した文字列が抽出できる関数

    Excelで、指定した文字列だけを抽出表示する場合、「文字列を先頭(左)から抽出する」などの関数は「LEFT関数」や「RIGHT関数」がありますが、位置の指定ではなく、文字列の中にある、特定の文字だけを指定して抽出してできる関数は何でしょうか? たとえば「ラーメン」「うどん」「そば」いずれかを「含む」文字列が入っているセルの中から、「うどん」のセルだけを抽出して表示するという場合です。

  • エクセルで指定した文字だけを使っているセルを抽出したいのですが

    Excelで、ひらがなだけで書かれた単語リストがあります。1セルに1語ずつ、A列に数千語あります。その中から指定した文字のみを使っている単語のセルを抽出する方法はありますか。 例えば、「あ、い、う、え、お」の5文字を指定した場合 ・抽出する単語-あい(愛)、あおい(青い)、いえ(家)、お(尾)など ・抽出しない単語-あかい(赤い)、いす(椅子)、てがみ(手紙)など マクロは苦手なので、できればマクロを使わない方法がありがたいです。 よろしくお願いします。

  • Excelによる指定文字間の抽出方法

    Excelの文字列で、ある特定の文字と文字の間に存在する文字だけを抽出する方法が分かりません。関数の組み合わせでそのようなことができるのでしょうか?このような機能を有するアドインソフトが存在するようですが、導入は考えていません。関数での方法があればどなたか教えてください。よろしくお願いします。

  • 指定数字の抽出方法

    エクセル初心者です。 1か月分のコンピューターのエラーログが吐き出されたファイルがあるのですが、エラーコードのみを吐き出す方法を調べています。 エラーログの中身 <XX月XX日 XXに失敗しました> .X.X.X.X.X.X.X.X.X 【X.X.X.X.X】の部分がエラーコードとなるのですが、Xの部分の数字がたくさんあり、抽出を行うことが出来ません。また<>の部分もたくさん種類があるため、指定文字前の切り離しも行うことが出来ません。 例:.135.20.1.3.7や.1.8.6.3.447.1等 このエラーコードの部分のみを抽出方法がありますでしょうか? 方法がありましたら申し訳ありませんが教えてください。

  • ACCESS 文字の抽出方法

    ACCESS2000で開発しています。 簡単なことだと思うのですが、ある文字列のなかから"/"以外の文字を抽出するにはどうすればよいですか? 例)年月日 テキスト ”2008/06/23”               ↓            ”20080623” LEFT関数やMID関数でできるのですが、できれば上記の方法でやりたいと思っています。 よろしくお願いします。

  • 指定文字を含む縦列を抽出する方法を教えてください。

    シート1にグループ、品名、数量と記述があり、 それぞれにデータが多数あるとします。 <シート1> グループ ;果物、 ,野菜 , 果物 ,魚類 品名   ;りんご ,玉ねぎ ,みかん ,さんま 数量   ;1   ,2   ,3   ,1 シート1のグループにある名称だけをすべてシート2に 抜き出したい(グループ、品名、数量を含む)のです。 <シート2> グループ ;果物 ,果物、 品名 ;りんご ,みかん 数量 ;1 ,3 検索行  ; 該当件数 ; と縦列であらわしたいのです。 縦列の関数式がわかりません。 これはヤフで質問日時:2009/9/12 tamagokakegohan_mark2さんが指定文字を含む行を抽出するとして、 質問されたもので pride_is_the_strongestさんが回答をよせられています。 この回答を縦列で表す関数式に替えたいのですが、教えていただけませんか。 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1030529945 他の関数式で表されても構いません。 よろしくおねがいします。 エクセル2010。

  • エクセルで全範囲から指定の文字列を含む行を抽出する方法

    タイトルの通りなのですが エクセルで全範囲から指定の文字列を含む行を抽出する方法はないのでしょうか? フィルタは列ごとになっていますが列ごとではなく全範囲から抽出したいと思ってます。宜しくお願いしますm(_ _)m

  • 文字と文字の間を埋める

    エクセルでセルの中の文字と文字の間を埋める方法

  • Excel2000の指定曜日の日にちを抽出したい。

    1年間のカレンダーから、Excelの関数を使って、指定の曜日をすべて指定して、 下記のように、日にちを抽出したいと思ってます。簡潔に出来る方法をご教授ください。 例)2012年に火曜日のみ日付の抽出 1/3 1/10 1/17 1/24 1/31 2/7 2/14 2/21 2/28 3/6 3/13 3/20 3/27 4/3 4/10 4/17 4/24 5/1 5/8 5/15 5/22 5/29 6/5 6/12 6/19 6/26 7/3 7/10 7/17 7/24 7/31 8/7 8/14 8/21 8/28 9/4 9/11 9/18 9/25 10/2 10/9 10/16 10/23 10/30 11/6 11/13 11/20 11/27 12/4 12/11 12/18 12/25

  • excel セルとセルの間へ数字を置く

    横列Aに数字を並べ、その数字をセルのラインに乗るよう(縦列1と2の間)にした表を作成したいのですが、うまくいきません。 わかりにくい説明かもしれませんが、わかる方、よろしくお願いします。 Excel2007をvistaで使用しています。

このQ&Aのポイント
  • 横浜市長選についての要約文1
  • 横浜市長選についての要約文2
  • 横浜市長選についての要約文3
回答を見る

専門家に質問してみよう