• ベストアンサー

ACCESSのフィールドの中身の*のみを置換する

お世話になってます。 早速質問なのですがフィールドの中身に*が含まれていて、それを任意の文字に置き換えたいのですが*が含まれていないフィールドまで検索にひっかかり、全ての文字列が置き換えられてしまいます。 ワイルドカードなので当然の挙動だとは思うのですが、これらの挙動をエスケープして*のみを置換する方法はありますでしょうか? 宜しくお願いします。

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

  • ベストアンサー
  • chie65536
  • ベストアンサー率41% (2512/6032)
回答No.2

全角の「*」を検索文字にして、検索条件を「フィールドの一部分」にして置換して下さい。

imasyu
質問者

お礼

期待通りの結果が得られました。 ありがとうございます!! またいろいろと質問させて頂きますので、宜しくお願い致します。

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

その他の回答 (1)

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.1

> フィールドまで検索にひっかかり、 どのように検索(抽出)しているのでしょうか? あと、Accessのバージョンは? Access2002以降であれば、更新クエリで Replace 関数・Chr 関数を使って 置換してやればいいと思います。 Access2000だと、Replace 関数を直接クエリから使うことができないので、 一部、VBAが必要になると思います。

imasyu
質問者

お礼

ありがとうございました。 全角の*を使うことで解決出来ました。 またいろいろと質問しますので宜しくお願いします。 ちなみにアクセスの2000ですがいづれ2002以降を使う機会も出てくると思いますので、お教えいただいた事を参考にさせて頂きます。

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

関連するQ&A

  • 【アクセス】ハイパーリンク アドレスと表示文字列のどちらも置換したい

    テーブル1のフィールド「アドレス」をハイパーリンク型にし、 レコードに 表示文字列:C:\Users アドレス:C:\Users と入れています。 ここで 置換と検索ダイアログを呼び出して 検索する文字列:C:\ 置換後の文字列:D:\ にしてすべて置換をおしても 表示文字列しか置換されません。 表示文字列もアドレスも同じように置換するにはどうすればいいのでしょうか? よろしくお願い致します。(当方アクセス2003です)

  • AccessのデータをVBを使って置換する

    (1)VisualBasic6.0を用いて、Access2000のデータベースに接続します。 (2)データベースの中のテーブル(テーブル名:T-カレンダー)にあるフィールド(フィールド名:コード)に保存されているデータの一部分を置換したい。(⇒途中のアルファベットを変更したい。)(例;置換前:123FFF789 置換後:123III789)  テーブルを直接開いて、フィールドにカーソルをあわせて、”編集メニュー”の『検索と置換』から行っても出来るのですが、Accessを触らないでVBから作ったフォームから変更(置換)をさせたい。  ◇フォームに2つテキストボックスを作って、「検索する文字列」と「置換後の文字列」を入力し、『変換』ボタンを押したら、データが置換される、という流れ。   一回きりの置換でなくて、何回でも同じフィールド内のデータを置換したい。   SQLのREPLACE関数を用いて出来るかな、とは思っているのですが、どのように作成すればよろしいのでしょうか。  また他のやり方でシンプルな方法があればお教えください。

  • Access2002の検索、置換について

    Access2002の検索、置換について教えてください。 メールアドレスを入力しているフィールドの中でアドレスの先頭文字が「a」で始まるアドレスを大文字「A」で始まるアドレスにしたいと思います。 置換ボタンを押して「検索する文字列」には「a」と入力しました。 ところが「abc@dd*.ne.jp」も検索されますが、「ccca@dd*.ne.jp」も検索で出てきます。「a」で始まるもののみ置換したいのですが・・・。 これは出来ないのでしょうか? 次へ検索ボタンで一つ一つ確認をしながら置換するしかしょうがないのでしょうか?

  • Accessでの置換

    Access97を使用しています。 置換のマクロ化って出来ますか。 具体的に言うとボタン一つで 「電話番号」のハイフンを消したいのです。 今はテーブルを開いて編集-置換で検索する文字列に 「-」、置換後の文字列に何も入れずにすべて置換しています。 Excelですと「SUBSTITUTE」という関数が一番近いのですが、 Accessでそれに準ずるものってあるのでしょうか? イベントプロシージャでの記述で教えて いただけると一番助かります。

  • アクセス2000で 文字列の一部の文字の置換方法

    氏名フィールドに入力している一郎、次郎、三郎という名前の「郎」を、「*郎」で検索と置換で検索しました。これを「朗」に置換したいのです。 置換後の文字列を「*朗」とすればそれまでのフルネームが全て「*朗」になりますし、「朗」としても同じです。 検索と置換で、一郎、次郎、三郎を一朗、次朗、三朗に置換する方法を教えていただけませんか。

  • Exce置換lマクロについて教えてください。

    Exce置換lマクロについて教えてください。 置換画面を表示して、任意の文字を入力しすべて置換したいのですが可能でしょうか? (1)置換画面表示 (2)検索する文字列(初期値:aaa_111) (3)置換後の文字列(bbb_222) (4)すべて置換 教えてください。

  • Excelの置換がうまく出来ません。

     Excelである文字列を検索しようとすると、ちゃんと検索できるのですが、それを別の文字列に「置換」しようとすると「一致するデータが見つかりません」のメッセージが出て置換できません。「一致するデータ」がちゃんと存在するにもかかわらずにです。  ところが「すべて置換」にするとちゃんとすべてその文字列が指定の文字列に置換出来てしまいます。  即ち、ちゃんと置換すべき文字列が存在するにもかかわらず「置換」だけが実行されないのです。  これってどうゆうわけでしょうか?  私としては、「すべて置換」ではなく、一つ一つ確認しながら文字列の置換を行いたいのですが・・・私のやり方が悪いのでしょうか?  尚、ここで言う「文字列」とは狭い意味のそれではなく、数値・記号を含む全ての文字と言う意味です。

  • accessの置換え

    いつもお世話になっております よろしくお願いします access2000で氏名フィールドというフィールドに記載されている文字列(氏名)を未登録に置き換えようと思い 検索する文字列 * (氏名がばらばらなのでワイルドカードを使用) 置換え後の文字列 未登録 検索する場所 氏名 検索条件 フィールド全体 にして全て置換えをすると 指定されたデータ量がフィールドサイズを超えています。 データ量を減らし、挿入または貼り付けを行ってください と出てきて一気に変換できません。 方法が間違っているのでしょうか?

  • エクセルで特定のパターンの文字列を置換

    大量の文字列が入力されたスプレッドシートがあります。 この文字列の中に、特定のパターンの文字列が散在しています。 ここでは例として、 #○○▲××$ とします。 「○○」と「××」は任意の文字列で、「#」「▲」「$」が特定文字列です(エスケープみたいなものですね)。 ここで以下のような置換を行いたいと思っています。 #○○▲××$ ↓ ××(○○) 「○○」と「××」は多種多様なので、単なる置換機能では対応できません(一個一個やっていけば別ですが、現実的ではないので……)。 こういった置換を一気に行うよい方法があればご教示頂きたく思います。 よろしくお願い申し上げます。

  • # の置換はどうすればいいですか?

    #をAに置換する場合 s/#/A/; というふうに考えますが、コメントアウトされてしまいます。 /を置換するときは\/でエスケープできるのですが、#の場合どうすればよいのでしょう? また、////という文字列をAに置換する場合、 s/\/\/\/\//A/; というふうに書かなければならないのでしょうか? 何かうまい方法はありますか?

    • ベストアンサー
    • Perl