- ベストアンサー
任意の文字列で置換するダイアログ
シート内の関数に記載されている「item」という文字列を 任意に置換するダイアログの作り方で困っております。 シート内には 「='C:\sales\[item.xls]id'!$F$48=0,"",'C:\sales\[item.xls]id'!$F$48))] という関数が入っており、 この「item」を「1200」や「1800」など任意の文字列をインプットボックスに入力し (itemから任意の文字列に)『すべて置換』したいと思っております。 どなたかご存知の方がおいででしたら、ご教示くださいますようお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
1.編集-リンクの設定で一括変更 2.INDIRECT関数を使って任意のセルの値で置き換える。 A1 に参照ブック名が入っている場合。 =INDIRECT"'C:\sales\[" & A1 & ".xls]id'!$F$48=0","",INDIRECT"'C:\sales\[" & A1 & ".xls]id'!$F$48"))
その他の回答 (2)
- papayuka
- ベストアンサー率45% (1388/3066)
回答No.3
#1です。 > 参照するファイルがたくさんあるのです。 > なので、ダイアログをだして…と考えたしだいです。 ちょっと意味を理解出来ません。 置換ダイアログを出すのも、マクロをキックするのも同じだと思いますが、、、 Sub Test1() Application.Dialogs(xlDialogFormulaReplace).Show End Sub
- papayuka
- ベストアンサー率45% (1388/3066)
回答No.1
普通に「置換」で出来ると思うのですが、、、 存在しないファイル名やシート名とかにしちゃうと厄介ですが。
質問者
補足
ごもっともなのですが、参照するファイルがたくさんあるのです。 なので、ダイアログをだして…と考えたしだいです。
補足
$F$48以外にも、ほかのセルを参照している箇所がたくさんあります。 加えて、「item.xls」を書き換える対象もたくさんあるのです。 それでインプットボックスとVBAで解決したいと考えました。