No.3ベストアンサー
- 回答日時:
次のマクロを実行すると、ご希望の置換え状態になるかと思います。
宜しかったら、新規ブックでテストしてみてください。
一応、ご存知とは思いますが、操作手順を詳しく書いておきます。
1.Alt + F11 で VBE(Visual Basic Editor)を開きます。
2.VBE のメニューから[挿入] -->[標準モジュール] を指定します。
3.モジュールウィンドウに下記コードをコピーして貼り付けます。
4. コードの 3~5 行目の「設定事項」を実情に合わせて変更します。
(今は、例えばの =int(sum(a1:a10))→=int(average(a1:a10))にしています。)
5.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。
6.もし、保存して何回か使用するときは、メニューから[ツール]-->[マクロ]-->
[セキュリティ]で「セキュリティレベル」を「中」にして[OK]します。
7.実行するときは、Alt + F8 (メニューから[ツール]-->[マクロ]-->[マクロ])で
「フォルダ内全ブック全シート計算式置換え」を指定し、[実行]ボタンを押します。
これで、フォルダ内の全ブックの計算式が指定したものに全部置換えになると思います。
・ 検索対象ブックのシート内で、他ブックのセル参照が設定されている場合は、
その旨のダイアログボックスが表示されます。(手動で対応)
・ ブックやシートが保護によって書き換えられない状態が、無いものとします。
・ 検索を終了すると、検索対象ブック数と、置換え総件数が表示されます。
Sub フォルダ内全ブック全シート計算式置換え()
'--- 設定事項 -----------------
Const Mypath = "C:\DATA\" ' <--- 検索フォルダ名を指定
Const OldStr = "=INT(SUM(A1:A10))" ' <--- 置換え旧計算式(部分可)
Const NewStr = "=INT(AVERAGE(A1:A10))" ' <--- 置換え新計算式(部分可)
'-----------------------------
Dim WB As Workbook
Dim Rng As Range
Dim FName As String
Dim Bcnt As Integer
Dim Dcnt As Integer
Dim Scnt As Integer
Dim N As Integer
Application.ScreenUpdating = False
Application.DisplayAlerts = False
FName = Dir(Mypath & "*.xls", vbNormal)
Do While FName <> ""
Set WB = Workbooks.Open(Mypath & FName)
Bcnt = Bcnt + 1
Scnt = 0
Windows(WB.Name).Visible = False
For N = 1 To WB.Worksheets.Count
Set Rng = WB.Worksheets(N).Cells.Find(OldStr)
If Not Rng Is Nothing Then
Scnt = Scnt + 1
Do
Rng.Formula = Replace(Rng.Formula, OldStr, NewStr)
Dcnt = Dcnt + 1
Set Rng = WB.Worksheets(N).Cells.FindNext(Rng)
Loop Until Rng Is Nothing
End If
Next N
If Scnt = 0 Then
WB.Close SaveChanges:=False
Else
Windows(WB.Name).Visible = True
WB.Close SaveChanges:=True
End If
FName = Dir
If FName = ThisWorkbook.FullName Then FName = Dir
Loop
Application.DisplayAlerts = True
Application.ScreenUpdating = True
If Bcnt = 0 Then
MsgBox "指定したフォルダに、ブックは見つかりませんでした。", , "検索完了"
Else
MsgBox Bcnt & " のブックを検索し " & Dcnt & " 箇所を置換えました。", , "置換え完了"
End If
Set WB = Nothing
Set Rng = Nothing
End Sub
まず最初にお礼が遅くなりまして申し訳ございません。週末は自宅に不在でしたのでさきほどこちらのサイトをみました。
このマクロを実行すると、驚きました。一部を改正しただけで複数のファイルが一度で置き換えを行うことができました。勉強になりました。ありがとうございました。
No.2
- 回答日時:
[Ctrl]+[G](ジャンプ)→[ジャンプ]→[セル選択]→[選択オプション]→[数式]をチェック→[OK]
数式の入っているセルが選択される。
[Ctrl]+[H](置換)→[検索と置換]→[置換]→[検索する文字列]→「sum」と入力→[検索後の文字列]→「average」と入力→[すべて置換]→[閉じる]
これで可能かと思いますが、お試し下さい。
まず最初にお礼が遅くなりまして申し訳ございません。Sakemanさんがおっしゃてるのは、たぶん単独のファイルの置き換えだと思います。私の質問は、数千もある大量のエクセルファイルを一度の操作で簡単に関数の数式を置き換えしたかったのです。私の質問がわかりにくかったもしれません。すいませんでした。何かありましたらよろしくお願いします。ありがとうございました。
No.1
- 回答日時:
そういう業務向けのオンラインソフトがあります。
こちらが簡単そうです。
OfficeGrep
http://www.vector.co.jp/soft/win95/util/se190183 …
--
VBAを利用して操作を自動化することも可能です。
[ツール]-[マクロ]-[新しいマクロの記録]で個人用マクロブックに記録、それぞれのファイルを開いて実施とか、ファイルを開く~保存までもVBAで記述とか。
参考URL:http://www.vector.co.jp/soft/win95/util/se190183 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル、画像ファイル名の書かれたセル(複数個所)に画像を一括で表示させる方法 1 2023/04/19 00:19
- Excel(エクセル) エクセル関数についてお教えください 3 2023/07/24 12:33
- Excel(エクセル) 前の(左隣の)シートを連続参照するように、あとから変更したい 1 2023/02/22 00:51
- Excel(エクセル) エクセルのフッタやヘッダーについて 3 2023/02/04 09:45
- HTML・CSS HTMLタグのあるCSVファイルを利用する方法 4 2023/03/19 14:41
- Excel(エクセル) セルの値からファイルを複数作りたい 2 2022/10/06 12:42
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
このQ&Aを見た人はこんなQ&Aも見ています
-
好きな人を振り向かせるためにしたこと
大好きな人と会話のきっかけを少しでも作りたい、意識してもらいたい…! 振り向かせるためにどんなことをしたことがありますか?
-
一番最初にネットにつないだのはいつ?
ネットユーザーもいろんな世代が生まれていますが、始めて接続したときのワクワクは同じはず! 人生で一番最初にネットに接続したときの思い出を教えて下さい。
-
これが怖いの自分だけ?というものありますか?
人によって怖いもの(恐怖症)ありませんか? 怖いものには、怖くなったきっかけやエピソードがあって聞いてみるとそんな感覚もあるのかと新しい発見があって面白いです。
-
前回の年越しの瞬間、何してた?
いよいよ2025年がやってきますね。 年越しのスタイルは人それぞれ。 2024年を迎える瞬間は何をしていましたか?
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
エクセル 複数ファイルの一括セル入力
Excel(エクセル)
-
Excelの計算式内の文字列の一括置換は出来ますか
Excel(エクセル)
-
数式の置換がうまく行かない
Excel(エクセル)
-
-
4
エクセル 複数のブックを一度で編集する方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAで保存しないで閉じると空の...
-
エクセル関数>参照ファイル名...
-
マクロの保存先、開いてるすべ...
-
【Excel VBA】マクロでExcel自...
-
【Excel】マクロの保存先について
-
EXcelのマクロで相対パスでファ...
-
excelで直前に参照していたブッ...
-
名前の変わるブックをアクティ...
-
EXCELマクロで、開いてはいるが...
-
エクセルでマクロを組んでいな...
-
エクセルVBA 個人用マクロブッ...
-
EXCELのボタンによるマクロの登...
-
エクセル;相対パスを絶対パスへ...
-
エクセルについて教えてください。
-
【マクロ】必要な項目(列)の...
-
【マクロ】マクロが保存されて...
-
エクセルのマクロについて教え...
-
WPSOffice_マクロの有効化について
-
エクセル ボタンに設定したマク...
-
エクセルの表を複数枚印刷した...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAで保存しないで閉じると空の...
-
エクセル関数>参照ファイル名...
-
マクロの保存先、開いてるすべ...
-
【Excel VBA】マクロでExcel自...
-
【Excel】マクロの保存先について
-
エクセル;相対パスを絶対パスへ...
-
EXcelのマクロで相対パスでファ...
-
エクセルのvbaにて thisworkboo...
-
excelで直前に参照していたブッ...
-
[フィルターオプションの設定]...
-
複数のExcelファイルの印刷設定...
-
エクセルVBA 個人用マクロブッ...
-
EXCELマクロで、開いてはいるが...
-
名前の変わるブックをアクティ...
-
EXCELのボタンによるマクロの登...
-
【Excel】特定セルの内容をテキ...
-
複数のbookから特定のセル(行...
-
エクセルVBAで作成した別ブック...
-
エクセルで使用期限付きのブッ...
-
エクセルを開いて文字を打つ際...
おすすめ情報