文字列を参照して削除する方法とその結果の残し方

このQ&Aのポイント
  • Excel2003で文字列から他の文字列を参照して削除し、結果を残すことは可能です。A列には長い文字列があり、B列にはA列に含まれる文字列が短い形で入っています。C列に関数を使用して、A列からB列の文字列を削除した結果を抽出することができます。
  • 例えば、A列に「石川武」という文字列があり、B列には「石川」と「武」という文字列が入っています。関数を使用することで、C列には「石川武」という文字列から「石川」と「武」を削除した結果が残ります。同様に、他の行でも同じ操作を行うことができます。
  • A列の文字列は長いものが多く、B列の文字列は2〜4文字程度の短いものが多いです。ですので、関数を使ってB列に含まれる文字列をA列から削除することで、C列に結果を抽出することができます。このような操作はExcel2003でも可能です。
回答を見る
  • ベストアンサー

文字列から他の文字列を参照して削除し、結果を残すことはできますか?

文字列から他の文字列を参照して削除し、結果を残すことはできますか? Excel2003です。 A列、B列に文字が入っており、 原則的にAは長く、AはBに書かれている文字を含んでいます。 他の列に関数で     A           B     C 1  石川武          石川   武 2  記者ハンドブック     ハンド  記者ブック 3  長文ドキュメント     メント  長文ドキュ 4  エコポイントが半減します 半減   エコポイントがします 5  過去にやった問題集    去に   過やった問題集 6  手作業で入力する     で    手作業入力する といったように Cのような結果を抽出することはできますか? (C列でなくてももちろんかまいません) A列はもっと長いものが多く B列は2~4文字です。 あまり難しいことはわからないので、とんでもなく無理な話をしているかもしれませんが もしできるのであればありがたいです。よろしくお願いします。

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

  • ベストアンサー
  • kyanki
  • ベストアンサー率33% (4/12)
回答No.2

>    A           B     C >1  石川武          石川   武 =SUBSTITUTE(A1,B1,,1) これで"武"のみが取得できます。 上記関数の説明としては、 =SUBSTITUTE(検索対象の文字列,       検索する文字列,       置き換え文字列,       何個目を置き換えるか)

nekomyumyu
質問者

お礼

追加の質問も含め、お答えいただきありがとうございました。 大変助かりました。

nekomyumyu
質問者

補足

ありがとうございます。説明までいただいて恐縮です。 後学のためにおうかがいしたいのですが、 「何個目を置き換えるか」とは具体的にどの部分を指すのですか? 例えば「2」にすると、何が違うのですか? 下記の方に加え、ひとつ条件が多いのがなぜかなあと思いまして…

その他の回答 (2)

  • kyanki
  • ベストアンサー率33% (4/12)
回答No.3

No.2です。 >「何個目を置き換えるか」とは具体的にどの部分を指すのですか? >例えば「2」にすると、何が違うのですか? 例えば、 A      |B    |C ------------------------------- 武田 武 |武   |=SUBSTITUTE(A1,B1,,*) 上記のような場合に、*の部分を"1"とすると、 "田 武"が結果として取得できます。 *の部分を"2"とすると、 "武田 "が結果として取得できます。 つまり、検索したい文字("武")で検索対象の文字列("武田 武")を検索した場合に、 何個目にヒットした文字を置き換えるのかの指定になります。

nekomyumyu
質問者

お礼

なるほど。そういうことも出来るのですね。 勉強になりました、ありがとうございました。

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

一例です。 C1に=SUBSTITUTE(A1,B1,"")として下方向にコピー

nekomyumyu
質問者

お礼

すばやくわかりやすい回答をありがとうございます。 大変迷ったのですが… 今回はベストアンサーにできずすみません。

関連するQ&A

  • Excel 文字列検索

        A      B      C 1  田中実    田中    田中実 2  石川武          田中康雄 3  中田英人 4  石崎甚平   石川    石川武 5  石川啓子         石川啓子 6  中田康雄 B列にA列の文字列に部分一致する文字列を入力すると C列にその検索結果を表示する様にしたい。 C1=IF(OR($B$2="",$B$2<1),"",VLOOKUP("*"&B2&"*",$A$2:$A$1500,1,FALSE))だと田中や石川のように名前がかぶると 1個しか表示されない。B2にも田中が該当する人を表示させたい。 説明が下手かもしれませんが、知恵を貸してください。よろしくお願いします。

  • エクセル:””をいれると左横のセルの文字列の表示が消える

    よろしくお願いします。 例えば セル”C2”にIF(A2=1,"","×")などと関数を入力しているとします。 そこで、A2=1,B2に長文の文字列が入力されているときに、 C2には「""」が返されるわけですが、 B2に入力されている文字がさえぎられてしまいます。 尚、B列のセル幅はあえて「10」に設定しておきたい状況です。 C2に入れるIF関数を工夫することで、 A2=1の時に、B2の文字が長文でも表示できる方法はありますでしょうか?

  • Excelで他の列を参照して値を入力

    添付画像をご参照ください。 ・A列、B列はデータが入力済みです。 ・C列はA列と同類の内容が入力されていますが、A列と順序が異なっていたり、一部A列にはない内容も存在します。 ●D列は操作前は空の状態で、対応するC列の値がA列から探して、A列に対応するB列の値をD列に自動で付与したいです。 ●C列と同じ値がA列にない場合はD列は空欄のままとします。 言葉で表現するとややこしいですが、添付画像のD列が求めたい結果です。(D列も文字型とします) Excelは2010です。 よろしくお願いいたします。

  • B列とC列のいずれかに文字が入力されています。

    B列とC列のいずれかに文字が入力されています。 B列とC列同時に入力されていることはなく、B列とC列とも空白のこともあります。 この時、A列にB列、C列の文字をコピーするためにはA列にどのような関数を用いればよいですか。 A  B  C あ    あ い い           う    う といった具合です。 

  • 文字列を参照

    A列に郵便番号000-0000一覧 B列に住所一覧 この時例えば C1に郵便番号を入力すると A1と同じ郵便番号であればB1の住所 A2と同じであればB2の住所というように D1に表示したいのですが、宜しくお願いします。

  • ワードで文字列の参照はできないのでしょうか

    たとえば、Aテキストボックスに文字列を入力することにより、Bテキストボックスにも同じ文字列が反映される。みたいなことがしたいのですが、ワードではそのようなことはできないのでしょうか? エクセルの場合、A1セルに入力した文字列を、他のセルにも反映させたい場合は、反映させたいセルに「=A1」と入力すれば、そのセルにもA1に入力した文字列が参照されて反映されますよね。 それと同じようなことをワードでしたいのです。

  • A列の文字列からB列の文字列を

    A列の文字列からB列の文字列を 引く(マイナス)することはできないでしょうか? 例) A列 - B列 - C列 ABCD - CD - AB ABCD - BCD - A ABCD - GH - ABCD という風にC列に関数で結果を表示したいのです。 方法はないでしょうか? よろしくお願いします。

  • あるセル列内に任意の文字列があった場合の自動処理

    VBAを利用して、あるセル列内にある文字列があった場合に その文字列が存在した行のAセルからCセルまで自動的に 背景色をグレーにしてくれるような動きをしたいです。 簡単に言うと、「作業完了」の文字列があったらその行をグレーするイメージです。 参考例として、セルC列に対してその列内のあるCセル列に 文字列"@"が入力された場合、その行のA行からC行まで 自動的に背景色を変更したいです。 また、"@"が入力されていない場合は、元の背景色に戻るようにしたいです。 ■ 例1:C2に"@"が入力されるパターン 【入力前】  | A | B | C | -+---+---+---+- 1|   |   |   | -+---+---+---+- 2|   |   |   | ← 当然何も変化なし -+---+---+---+- 3|   |   |   | -+---+---+---+- 【入力後】  | A | B | C | -+---+---+---+- 1|   |   |   | -+---+---+---+- 2|////|////|/@/| ← ← C2に"@"が入力されるとA2~C2までの背景色をグレーに変更。 -+---+---+---+- 3|   |   |   | -+---+---+---+- 【削除】  | A | B | C | -+---+---+---+- 1|   |   |   | -+---+---+---+- 2|   |   |   | ← C2の"@"を消すと入力前に戻る。(元通り) -+---+---+---+- 3|   |   |   | -+---+---+---+- 任意の文字列をきっかけに自動実行するようには出来たのですが それから先がさっぱりで困っています、、、。 よろしくお願いします。

  • Wordで他のファイルから文字列を参照するには?

    Excelのセルの参照の様に、wordでも他のファイルから文字列を参照して表示することはできるのでしょうか? 例えば、ファイルAとファイルB(共にOffice 2003のWord)があったとして、ファイルAの2列目の「ああああ」という文字列をファイルBの3行目に表示したいのです。表示だけではなく、ファイルAの「ああああ」が「いいいい」に変更されたときはファイルBの文字列「いいいい」に変更されてほしいのです。 ハイパーリンクは別のファイルにたどれるだけで文字列は自分で入力しなければなりませんし、相互参照は同じファイル同士でなければいけので、今回やりたいことは満たされないようです。 ネットで検索したのですが、検索方法が悪いのか「できる」とも「できない」ともわからない状態です。 感触からするとWordの一般的な機能ではできないようなのですが、wordのマクロを勉強すればできるのか?はたまた技術的に無理なのか、教えてください。 使用しているwordのバージョンは2003です。よろしくお願いいたします。

  • excelの文字列の操作について

    A列、C列、E列、G列・・・の1行目にはタイトルが入力されており、 B列、D列、F列、H列・・・には不特定の文字列が入力されており、それぞれ行数も不特定です。 A列、C列、E列、G列・・・の1行目のタイトルはA列にまとめ、B列、D列、F列、H列・・・の文字列はB列にまとめたいです。 下の例の場合だと、C列の1行目のタイトルをB列の下端の左下にあたる(A7)に移動させ、 D列の2行目から入力された文字列を右となりの(B7)に移動させたいです。これの繰り返しです。     A列     B列     C列     D列 1    あ       A       い       2             B                a   3            C                b 4              D               c 5             E                6              F                            ↓     A列     B列     C列     D列 1    あ       A              2             B                   3            C                 4              D                5             E                6              F      7      い      a 8             b 9             c よろしくお願いします。

専門家に質問してみよう