• 締切済み

行方不明のマクロを探して、個人用マクロブックに改めて保存する方法(EX

行方不明のマクロを探して、個人用マクロブックに改めて保存する方法(EXCEL) 「EXCEL2003」  今までマクロの保存先を意識せず適当に保存してきました。 この結果、以前作成したマクロを編集し応用したいと考えていたのに どの.xlsファイルに保存したかわからなくなり、困っています。  そこで、整理整頓を兼ねてタイトルにあるように 過去に作成した保存先不明のマクロを効率よく探し出して、 個人用マクロブックに改めて保存したいと考えております。  VBEを起動し、今までに作成&保存したマクロをすべて呼び出す方法や、 拡張子で検索して、個人用マクロブックのフォルダーに保存する方法など 何かよい方法がありましたら、お教えください。  また、今後効率よくマクロを利用したいので、 何かアドバイスや注意点等があれば、ご意見いただければと思います。  宜しくお願い致します。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

この程度の課題をVBAで扱うとなると、相当マニアックになって、こんなところへ質問して、安直にコードを手に入れることではなく、自分で勉強するすべきようなことでしょう。 日本語の市販本では解説は無い(見つからない)と思うから MSのヘルプやMsdnに当たる 英語のVBAの解説書(で質問点の記述がある本)を探す WEBサイトを探す しかないだろう。 当面はWEB頼りかな。 ーー 私も勉強不足であり、WEBを頼りにしたものだが、下記が参考になれば。 即座に確認できるので入れているが、下記コードのMsgboxの表示が、しつこくなったらMsgboxは削除してください。 Sub test01() Dim vbo Open "moduleClist.txt" For Output As #1 For Each vbo In ActiveWorkbook.VBProject.VBComponents If (vbo.Type = 1 Or vbo.Type = 2) And vbo.Name <> "VBE" Then Set mymodule = ThisWorkbook.VBProject.VBComponents.Item(vbo.Name).CodeModule MsgBox vbo.Name MsgBox mymodule.CountOfLines l = mymodule.CountOfLines code = mymodule.Lines(1, l) MsgBox code Print #1, code End If Next Close #1 End Sub ーー 実行後メモ帳でmoduleClist.txtを開くとコードが出てきた。 ーー WEBでは田中先生の http://officetanaka.net/excel/vba/vbe/05.htm などの解説が参考になろう。 Googleで関係コードを照会しまくること。何か得られる。 ーー あと、その他の課題は シートモジュールのコードをどう捉えるか。 上記は1ブック対象のコードだが、 あるフォルダ内のエクセルブックを探し、それと1ブック対象の上記コードを使って、各ブックで繰り返すコードはどうなるか。 を勉強する。WEBに多数のコード実例がある。 FSOのフォルダの全ファイルを捕らえる方法をWEBで調べると良いと思う。 多数のフォルダのブックにこーどが分散している場合などは実効性は良く判らないが。 またコード(内容、ロジックなど)が汎用性があるかどうかどうかは、人間が読んで判断するしかないが時間がかかる。 参考までに。

関連するQ&A

  • Excel2000 個人用マクロブックに保存できない

    お世話になります。Excel2000です。マクロの作成で、個人用マクロブックという選択先がなくなってしまいました。(Personal.xlsがない??)どうすればいいのでしょう?どこにあるのでしょう?

  • Excel2003 個人用マクロブックがなくなりました

    Excel2003を使用しています。 個人用マクロブックにいくつかマクロが登録してあります。あるとき急に、Excelを起動してもPersonal.xlsが立ち上がらなくなりました。そこで、保存先と思われるApplicationData\\Microsoft\\Excel\\XLSTART\\ の中を確認したのですが、Personal.xlsが見当たりません。個人用マクロブックはなくなってしまったのでしょうか?復活できる方法はありませんでしょうか?

  • EXCEL 個人用マクロブックが起動しなくなりました

    EXCEL2002を使用していますが、個人用マクロブックが起動しなくなりました。 同様の質問がありましたので、回答を参考にマクロセキュリティレベルを確認し、一度Personal.xls ファイルを削除して再度個人用マクロブック作成していみましたがだめでした。 手動で個人用マクロブックを起動してマクロを実行してもエラーはでないのですが、正しく動作しません。 EXCEL2002を再インストールしてもだめだったので、EXCEL2002をアンインストール後一度EXCEL2000をインストールすると個人用マクロブックか起動するようになったので、再度EXCEL2002をインストールしてみるとまた個人用マクロブックは起動しなくなってしましました。 仕事上よく使用するアイコン等が使えなくて困っています。 よい対処方法がありましたら、ぜひ教えてください。 よろしくお願い致します。

  • excel2003 個人用マクロブックが開きません

    Excel2003を使用していますが、マクロを個人用マクロブックへ保存しましたが、次にexcelを起動するときにpersonal.xlsが、自動的に開きません。C:\Documents and Settings\ユーザー名\Application Data\Microsoft\Excel\XLSTARTには、きちんと保存されているのですが・・。

  • Excel2003の個人用マクロブックが、何の変更も加えてなくてもEx

    Excel2003の個人用マクロブックが、何の変更も加えてなくてもExcelを終了するたびに個人用マクロブックの保存を聞かれる様になってしまいました。 終了時に毎回ダイアログが出てきてしまうのが面倒なだけで、それ以外は特に支障は無いのですが… 何か良い解消方法はないでしょうか?

  • 個人用マクロブックについて

    ユーザー名 \AppData\Roaming\Microsoft\Excel\XLSTART のフォルダ内にある、PERSONAL.XLSB を開いた状態じゃないと、使用できなくなりました。 これでは、通常の各エクセルに保存しているマクロと同じです。。(むしろ、普段使用しないフォルダに入っているこのファイルを毎回開くほうが大変です。。 上記ファイルを開かないで、、 例えば、開発>マクロの記録 をクリックし、保存先を個人用マクロブックを選ぶと、 下記エラーが出ます。 " 起動フォルダにある個人用マクロブックは、記録のために開かれた状態でなければなりません。 " 上記ファイルを開かないで、、 例えば、開発のマクロを開くと、個人用マクロブックに保存したマクロは表示されません。 個人用マクロブックのお悩みによく出てくる、ヘルプ内の 使用できないアイテムも、念のためチェックしましたが、PERSONAL.XLSBの表示はありませんでした。 解決方法をご存知でしたら、教えてください。 どうぞ、よろしくお願いします。

  • 個人用マクロブック

    エクセル2007を使用しています。 個人用マクロブックにマクロを保存すると、開いていないブックでも使用できると学びました。 ただマクロの保存先が BOOK1 開いている全てのブック 作業中のブック、の3つしかありません。 どうすれば個人用マクロブックを作ることが出来るのでしょうか?

  • 個人用マクロブックが消えました

    エクセルで個人用マクロブックを利用していましたが、今日になって急に、VBEのプロジェクトエクスプローラーに、personal.xlsが表示されなくなってしまいました。 ファイル自体が存在してないようです。削除した覚えはないのですが。復旧は不可能でしょうか? ウィルスチェックは正常でした。こんなふうに突然消えてしまうことは、よくあることなんでしょうか。

  • 個人用マクロブックの共有について

    会社で使っている個人用マクロブックを、自宅のパソコンでも使えるようにしたいのですが、どうしたら良いでしょうか?? 普段は、自宅パソコンからリモートで会社パソコンにログインし、使っているので動きが遅く使いづらいのです。。 Excelごとにマクロの保存先を設定することは、扱いづらいと思い、個人用マクロブックに全て保存しています。 どなたか、教えて頂けますでしょうか。 よろしくお願いします。

  • 【Excel】マクロの保存先について

    Excel2003を使用しています。 すでに作成済みで使用しているマクロの保存先を変更することはできるのでしょうか? 例えば、Aという名前のマクロの保存先が「作業中のブック」だった場合に、あとから保存先を「個人用マクロブック」へ変更するといった感じです。 変更可能であれば、その方法を教えていただきたいのですが。。。 よろしくお願いします。

専門家に質問してみよう