質問: 【アクセス】ハイパーリンク アドレスと表示文字列のどちらも置換したい テーブル1のフィールド「アドレス」をハイパーリンク型にし、 レコードに 表示文字列:c:\users アドレス:c:\users と入れています。 ここで 置換と検索ダイアログを呼び出して 検索する文字列:c:\ 置換後の文字列:d:\ にしてすべて置換をおしても 表示文字列しか置換されません。 表示文字列もアドレスも同じように置換するにはどうすればいいのでしょうか? よろしくお願い致します。(当方アクセス2003です)
回答: ハイパーリンク型のフィールドhyperlinkがあったとして、クエリの式で、cstr([hyperlink])とすると、ハイパーリンクが、c:\users\file.xls#c:\users\file.xls# といった文字列に変換されます。当方access2000なので、replaceや、substituteがクエリでそのまま使えない(淋しい)のですが、access2003なら、上記式に手を加えて、replace(cstr([hyperlink]),"c:","d:")といった式が使えると思います。さらに、テーブル作成クエリに設定して、元のhyperlinkフィールドは出力されない様に設定します。 テーブル作成クエリ実行後、置換された文字列のフィールドの、データ型をハイパーリンク型に変更すると、d:に変更したハイパーリンクができあがりという事になると思います。面倒?