- ベストアンサー
エクセルのマクロ
エクセルで"123"と"234"というファイルがあるとします。 123を開いていない状態の時に、何かエクセルのファイルを名前を付けて保存→"234"に上書きすると、"123"の"A"というマクロが実行される様にできますか?
- みんなの回答 (7)
- 専門家の回答
関連するQ&A
- エクセルマクロでご教示ください
エクセルで作られたデータファイルに対し、ある操作を施して上書き保存するというマクロを作りました。 そのマクロを走らせるとファイル名を聞いてきまして、そこでファイル名を入力してやれば、ある操作を施したあと 自動的に上書き保存までしてくれるのですが、対象ファイルが複数個あると、ひとつ実行したあとまたひとつ ファイル名を入れて、またそれが終ったら次のファイル名を・・・というように、ひとつひとつ実行しなければならない というのが現状です。 これを次のように改良したいのですが、どうすればいいのでしょうか? 1.マクロを立ち上げる。 2.処理する複数のファイルが入っている「フォルダ」を選ぶ。 (一覧表示のウィンドウが出てきて、その中で「フォルダ」を選ぶ) 3.そのフォルダの中に入っているエクセルファイル全てに対し、既に作成済みのマクロを順次実行する。 というものです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 開いている別のファイルにExcelのマクロで上書きしたい
開いている別のファイルにExcelのマクロで上書きしたい いつも申し訳ありませんが またExcelのマクロについて質問させてください。 名前 = ActiveWorkbook.Name Set ファイル = Application.FileDialog(msoFileDialogSaveAs) Application.FileDialog(msoFileDialogSaveAs).InitialFileName = "コピー" & 名前 If ファイル.Show = -1 Then Worksheets.Copy ActiveWorkbook.SaveAs "コピー" & 名前 End If Set ファイル = Nothing これにより、現在開いているファイルを マクロを付けない状態で 名前の前に「コピー」と付けた別のファイルとして保存しています。 ただ問題は 同じ「コピー」が付いたファイルがすでに開かれている場合 保存しようとしても 実行時エラー '1004': このブックを、ほかの開いているブックまたはアドインと同じ名前では 保存できません。別の名前を指定するか、または保存する前に開いている ブックまたはアドインを閉じてくさい。 というエラーが表示されてしまうのです。 Excel2002でもExcel2003でも同じでした。 これを 仮に「コピー」の付いているファイルが すでに開かれているとしても これに上書きする形で保存できるようにするためには どうすればよいのでしょうか。 ご回答をよろしくお願いいたします。
- ベストアンサー
- その他MS Office製品
- エクセルマクロでファイルを保存するとき
エクセル(2000)のマクロで、csvファイルを集計して、そのファイルをエクセル形式で保存しようとしています。 このとき、「カレンダー用データファイル」という名前で保存するように指定していますが、もし、同名のファイルが開いていたりすると エラーが出てしまいます。 マクロの中で、「カレンダー用データファイル」という名前のファイルが、現在開いていないか調べることが出来るのではと、いろいろ探してみたのですが、どうしても判りません。 どなたか 教えていただけませんか? また、同様のことを何度も繰り返すので上書き保存をしたいのですが、いちいち「同名のファイルがありますが上書きしますか?」というアラートを出さなくて住む方法もありましたら教えていただきたいです。
- ベストアンサー
- オフィス系ソフト
- エクセルにマクロが!
エクセル(Excel2000)で、マクロを使っていないのにマクロが使われてしまいます。 例えば、 まず普通にスタート→プログラムと表示していき、エクセルを立ち上げる。 次にどこのセルでもいいから適当に文字を入力する。(例えば、A1にaと入力する) そして、ファイル→名前を付けて保存で保存する。 こうしてできたエクセルのファイルを普通に立ち上げると、「このファイルはマクロが使われています」と、マクロを有効にするか、無効にするかを確認する画面が出てきてしまいます。 どうしてでしょうか。直す方法はあるのですか。よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- EXCELマクロ 保存禁止させるには?
EXCELのファイルを閲覧のみにしたいので、 [上書き保存]、[名前をつけて保存]等を禁止にするため、 以下のようにマクロを作成しようとしました。 EXCELマクロ、Workbook_BeforeSaveで、Cancel=Trueのコードを追加。 しかし、このマクロを入れるとこのブック自体が保存できないんです。 どうすればよいでしょう?
- ベストアンサー
- オフィス系ソフト
- エクセルのマクロのついて
初歩的な質問です(と思います)。 よろしくお願い致します。 エクセルの保存をマクロで実行したいのですが その際、保存名をエクセルの"A"というタブにあるA1セル に記載されている"B"という名前で保存したい。 この場合の命令文を教えてください。
- ベストアンサー
- オフィス系ソフト
- エクセルで「名前を付けて保存する」マクロ
エクセルのマクロに関して教えて下さい。 作成したエクセルの原稿を指定したフォルダに 「名前を付けて保存する」マクロを作成できればと思っています。 同じ名前で上書きなら問題ないのですが その都度違った名前で保存したい時に困っています。 名前の時だけ手動で入力するか 原稿の中に書いてある名前をコピーする方法でも良いです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- excelのマクロについて教えてくださいm(_ _)m
はじめまして excelでマクロをつかって、 ファイルを『上書き保存』をするときに複数の別のフォルダにも同時に保存したいのです。 誰かご存知でしたら教えてください^^; ちなみにOffice excel 2003を使ってます^^
- ベストアンサー
- その他(プログラミング・開発)
- Excelで保存ができなくなる。そしてマクロが消失
Excel~Microsoft365 での現象です。 ・xlsmファイルに簡単なマクロ(印刷するといったシンプル)を組んで使用しています。 ①使用していると、上書き保存ができなくなり、 「○○の保存中にエラーが検出されました。いくつかの機能を削除修復することにより、ファイルを保存できる場合があります。新しいファイルで修復を実行するには、[続行]をクリックしてください。ファイルの保存を中止するには、[キャンセル]をクリックしてください。」 と出ます。これが出ると、上書き保存も名前をつけて保存もまったくできなくなります。 ② ①の現象がでると、「マクロの表示」でマクロが表示されなくなります。 VABの画面では普通に表示されるファイルもあれば、固まったかのように表示されないファイルもあります。 これが複数のPCで起こり始めているので困っています。
- 締切済み
- Excel(エクセル)
- エクセルのマクロで別ファイル(エクセル)のマクロを実行させるには?
エクセルにおいてマクロを組んでいます. 1.実行させたいマクロAが組んであるファイル(Aファイルとします)が多数あります。またマクロAはモジュール内(Module1)に作っております。 2.1のマクロAを別のエクセルファイル(Bファイルとします)のマクロBで実行させたい. 上記のようなことを行いたいのですが可能でしょうか?さらに言えば、マクロBによってマクロAのプロシージャを指定して実行させることは出来るでしょうか? 現在は、マクロBによってマクロAを組んであるAファイルを開き、Aファイルのマクロの中にファイルを開いたときにマクロAを実行させる(イベントドリブン)ようにしています. 直接、マクロBでAファイルのマクロAを動かせるようになればマクロAにイベントドリブンなコードを組む手間がなくなるので、なんとかそのような事が出来ないでしょうか? どうか、詳しい方ご教授ください。 よろしくお願いいたします。。。
- ベストアンサー
- その他MS Office製品
補足
度々すいません。 別のファイルを"サンプル"として VBAの This Workbookに Private Sub Workbook_Open() Application.Run "サンプル.xls!Updatecheck" Application.Run "サンプル.xls!DOupdate_proc" End Sub とし、標準モジュールに Sub Updatecheck() Dim FSysObj As Object Dim inppath As String Dim outpath As String Dim inpfile As Object Dim outfile As Object inppath = "D:\ddd\123.xls" outpath = "D:\ddd\234.xls" Set FSysObj = CreateObject("Scripting.FileSystemObject") Set inpfile = FSysObj.GetFile(inppath) Set outfile = FSysObj.GetFile(outpath) If inpfile.DateLastModified < outfile.DateLastModified Then DOupdate_proc End If Application.DisplayAlerts = False Application.Quit End Sub Sub DOupdate_proc() Dim inppath As String Dim outpath As String inppath = "D:\ddd\123.xls" outpath = "D:\ddd\234.xls" Workbooks.Open inppath Workbooks.Open outpath Application.Run "サンプル.xls!ここに実行したいマクロ名" End Sub とし、ワークブックを開くと、マクロ"Updatecheck"と"DOupdate_proc" が実行される様にしたのですが、これではうまくいきませんでした。 私の理解が間違っていた様です。 又、本題とそれてしまいますが、アクセスで同じ様な事(決まった時間に、エクセルのファイルからデータをインポートし、現在あるテーブルの最後のレコードの下に追加をする)はできませんか?教えて頂だけると非常に助かります。 よろしくお願いします。