• ベストアンサー

エクセルのVBAで()に囲まれた文字列を置き換えたい。

今朝からずっと調べているのですが答えが見つからないので 質問させてください。 エクセルのVBAにて、任意の文字列を置き換えたいのですが たとえばその文字列が、 "ゴールデン(犬)"だとした場合、 replaceでこのなかの"(犬)"のみを ""という風に削除したいのですが 上手く拾うことができません。 この犬の文字については他の文字が入ることもあるため、 括弧で囲まれた文字列(括弧を含む)があれば置き換え という風にしたいのですが、どのようにすればできるでしょうか。 よろしくお願いします。

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

  • ベストアンサー
  • Dxak
  • ベストアンサー率34% (510/1465)
回答No.1

犬以外でも? Cells.Replace What:="(*)", _ Replacement:="", _ LookAt:=xlPart, SearchOrder:=xlByRows, _ MatchCase:=False, _ SearchFormat:=False, _ ReplaceFormat:=False と、言う事?

Radar3
質問者

お礼

参考にさせて頂きます。 ありがとうございました。

その他の回答 (1)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

Sub TEST01() Cells.Replace What:="(*)", Replacement:="", LookAt:=xlPart, _ MatchCase:=False, MatchByte:=False End Sub でしょうか。

Radar3
質問者

お礼

参考にさせて頂きます。 ありがとうございました。

関連するQ&A

  • VBA 文字列→検索→置き換え

    Excel 2007です。 VBAで、特定のレンジのセルから、特定のセルに入った文字列を検索して削除するにはどうしたらよいでしょうか? 具体的にはB2:B100の中にあるA1セル内の文字列を削除する。といった感じです。 よろしくお願い致します。

  • エクセルVBAで文字列変換

    エクセル2010でVBAを書いています。 シートの中のセルを全ての書式を文字列に変換するのはどうすればよいでしょうか。 ボタンをクリックした時にシート内のセルが全て文字列型に変換するという動きにしたいです。 解決法などありますでしょうか。 よろしくお願いします。

  • エクセル VBA 特定の文字列

    エクセル VBA 特定の文字列 A列に、様々な文字列があるとします。 そのうち、りんごと書かれている行のみを別シートに書き出すマクロを教えてください。 お願い致します。

  • エクセル、VBAで文字列から1文字消去

    VBAに詳しい方、教えてください。 エクセルでアクティブセルの場所を変更せずに、右クリックするたびにアクティブセルの文字列を一文字ずつ右から消去したいです。 例)今アクティブセルはC10にあり、文字列”あいうえおかき”が入っている。任意の場所で右クリックするたびに”あいうえおか”、”あいうえお”・・・と文字が減っていく。   左クリックとかで、アクティブセルの場所を変えることがあるが、右クリックでは場所は変わらない。 いい方法を教えてください。

  • エクセルVBA:文字列での検索

    エクセルVBAで、在庫管理をしようとしています。初心者です。 4個のListboxをそれぞれ選んでいくと、任意の商品名になるようにしています。 そこで、選んでもらった後、 Listbox1.List(Listbox1.ListIndex) & Listbox2.List(・・・・ というように4個のListboxから選ばれた文字列をつなぎ、別シートの在庫データベースの「商品名」と「Listboxをつなぎ合わせた文字列」と同じのを探させて、在庫を引き落とすようにしています。 ですが、できる場合とできない場合があります。 何ででしょう? 文字列で突き合わせると、見た目が同じ場合でも違うと認識されることがあるのでしょうか?(半角全角が違うとか、最後にスペースが入っているとかはないです。試しにセルに貼り付けてvlookupで検索してみると、できました。)

  • 特定の列に特定の文字があるとき

    VBAについてです。 たとえば、エクセルのA列に「あいうえお」という文字があったとき その行を削除したいという場合 素人ながらVBAを真似てみたら、A列以外のところに「あいうえお」が 入っている行も削除されてしまいました。 あくまでA列にその文字があったときにだけ削除したいのですが どのようにしたらいいのでしょうか。 InputBoxを使っていたら、どの列に文字が入っていても 削除されてしまい困っています。

  • Excelのシートにある全文字列を拾い出す

    Excelのシートに表(50列×50行)があり、その中のセルは任意に結合され、そのセルの中に文字列(単語)が入力してあります。 今回、その用語の索引をExcelで作りたく、その全文字を縦1列に拾い出したいのですが、効率的な方法を教えて下さい。 Excelは2003です。

  • エクセルでセルの文字列を括弧でくくりたいです

    こんにちは。 エクセルで、セルの文字列を中括弧やその他いろいろな括弧でくくりたいのですが、そんなことはできるのでしょうか? お願いします

  • VBAで文字列検索の方法

    エクセルで実現したいVBAです。 セル内に入力されている文字列に任意の文字が含まれているかどうかを判定したいのです。 例えば, 「特別値引対応商品」と入力されているセルに 「値引」という文字が含まれているかどうか のチェックをしたいのです。 検索する文字列(上記の場合なら「値引」)は固定でかまわないのですが,どのようにすれば実現できるでしょうか。 関数を探してみたのですが,ないように思います・・・。

  • エクセル2003で文字列内の不要なスペースを削除

    こんにちわ エクセル2003で文字列の中の不要なスペースを削除したいのですが、 TRIMではスペースが1つのときは削除してくれません。 日本語表記なので文字の間のスペースは1つでも必要ないのですが どのようにしたら、削除できるのでしょう? ちなみに、セルの中身は 私は今日 学校に行った。 それか  らお昼に給食 を食べた 見たいな感じで延々2000列近くあります。 これを 私は今日学校に行った。 それからお昼に給食を食べた の、ように訂正したいのですが、置き換えでもうまくいきません。 設定が悪いのでしょうか? 皆様のお知恵をお借りしたく質問しております よろしくお教えください。

専門家に質問してみよう