• ベストアンサー

EXCEL VBAで作成した ファイルを 複製できますか?

 EXCEL VBAで 名簿を作成しました。  名簿はMOに 保存しました。 保存したファイルを デスクトップに コピーしました。 しかし、ファイルを開いても、マクロがうまく働きませんでした。 「同じファイル名のファイルがある・・・」のようなメッセージが出てしまいます。  1台のコンピューターだけでなく、複数で使えるようにするには、VBAで作 成したファイルはどのように保存すればよいのでしょうか。教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • TTak
  • ベストアンサー率52% (206/389)
回答No.2

方法としては何種類かありそうですが データベースファイルと操作ファイルに分ける方法を提示します。 名簿をデータベースファイルとして、VBAマクロを含まないようにします。 データベースファイルの型式はEXCELのシートそのものでも構いませんし、 MDBファイル等にしてもいいでしょう。テキストファイルでもいいです。 次に、操作用のEXCELファイルを別に作り、そのファイルにデータベース ファイル(名簿)の読み込み、書き込み保存を自動化させるVBAマクロを 組みます。この操作用のEXCELファイルを”読みとり専用”にすると、複数 のユーザーが同時に使用可能です。また、データベースファイルが重複して 開かれることがないように、読み込み時、書き込み保存時以外はシートを 閉じておくようにマクロを組みます。滅多に起こらないことですが、 読み込み時、書き込み保存時が重複した場合はエラー処理で逃げます。 本来は、このような面倒な処理はMicrosoft Access+データベースファイル が得意かもしれません

korokoromarumaru
質問者

お礼

TTakさん  ありがとう ございました。  まだ初心者で、こうすれば こうなる。といった予測がつきません。 流れが つかめるように なりたいです。  おしえて いただいたことを 参考にして できるところから はじめようと 思います。

korokoromarumaru
質問者

補足

  ありがとうございました。   ひとつで、全部やろうとしたのが いかなかったのでしょうか。マク  ロを含むファイルは 別にしてつくると いいのですね。   データファイルをつくることと、   操作用ファイルは 別につくり読み取り専用にすることが大事なこと  だったのですね。  Microsoft Access の方が 得意なんだろうな思っていましたが、  Excelなら だれにでも 使えそうかなと 思って 取り組んでいます。  前途多難のようですが、少しずつ作ってみようと思います。  ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.3

「名簿」を新たに作成して保存するか、開くか、のマクロなんでしょうね。 自分で自分を作り出そうとしている、または自分で自分を開こうとしている ことが原因と思います。 最初に作成したブックはパス(フォルダまたはディレクトリ)が異なるため 同じ名称で作成しても「別ファイル」なので問題が無かったのでしょう。 起動する側の「名簿」をリネームしてから動作させて正常に動けば このことが確認できると思います。

全文を見る
すると、全ての回答が全文表示されます。
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

マクロ付きxlsデータを作成してコピーしても問題は無いと思います。 (「原本」を作成後、コピー・リネームしての使用をよくやってます) VBAで生成した「名簿」ファイルなのでしょうか? (「名簿」自体にはマクロを含まない) それとも何がしかのマクロを含む「名簿」ファイルなのでしょうか?

korokoromarumaru
質問者

補足

ありがとうございました。 いそぎでは ないのですが、VBAではじめてつくりました。 マクロを含む「名簿」です。 エラーメッセージは 以下のとおりです。  ○○名簿.xlsと同じ名前のファイルが既に  開いています。保存先が別のフォルダでも、  同じ名前のファイルを同時に開くことはできません。  2つめのファイルを開く場合は、一方のファイルを閉じるか、  またはいずれかのファイルの名前を変更してください。 よろしくお願いします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • マクロ(VBA)について

    会社のアルバイトスタッフの従業員名簿をマクロを用いたexcelで作成しています。 ボタンひとつで別シートの雇用契約書にデータが反映されるようになっています。(VBAで作成?しています。) 年度ごとに従業員名簿のファイルを作成しているのですが、新年度の従業員名簿ファイルの雇用契約書のシートに列を増やしたところ、昨年度の従業員名簿の雇用契約書シートもズレてしまいました。 従業員名簿を作成した人が退職してしまい、修正の仕方がまったくわかりません。 マクロを設定しているファイルをコピーすると、2つのコピーは連動されるのでしょうか? VBAがまったくわからず苦戦しております。 表現がわかりずらくて申し訳ありません。よろしくお願いします。

  • 【Excel VBA】ファイルをコピーする

    Excel2003を使用しています。 FDに一時保存されているデータを保存用データとして、MOへコピーしています。 FileCopy ステートメントというものを参考書で見たので、マクロの勉強がてら、試しにやってみたのですが、エラーが出てしまいました。  Sub 保存用作成()   FileCopy "A:\○○.xls","F:\○○.xls"  End Sub エラーメッセージは、『書き込めません』と出ていたのですが… よろしくお願いします。

  • EXCEL VBAで名前をつけて保存

    EXCEL2003でVBAを作成しています。 INPUTBOXに入力した名前でファイルを保存するVBAを 作成したのですが、 同じファイル名が既に存在していたときに、 エラーのメッセージを出すようなVBAはありますか?

  • EXCEL VBA マクロ値 のコピーについて

    マクロの初心者です。EXCEL VBA でタイマーマクロを作成し、結果の値を他ファイルの  EXCELシートに貼り付けようとしたところ、2012/9/30 13:38が2008/9/29      13:38となり、-0:08:53が-0.00616898148・・・・となり、真値がコピーできません。どなたか教えていただけないでしょうか?

  • Excelで、開いたファイルを消したい

    Excel2000ですが、 デスクトップ上に保存したcsvファイルを開く ↓ 作業中のブックにシートを増やしそこに先ほど開いたcsvファイルを貼り付けてシート名を変更 ↓ 開いたcsvファイルを閉じる という作業ですが、VBAマクロにするとどういうプログラムになるのでしょうか?教えてください。

  • office365のexcel2016でのVBA

    社内のネットワークハードディスクにexcel2007で作成した簡単なVBAを組み込んだxlsmファイルを保存し、複数の端末で使用しています。excel2007が入った端末でVBAを実行するとものの1秒で処理が終了するのですが、office365のexcel2016が入った端末で実行すると数分間かかってしまいます。ところが、同じxlsmファイルを同端末のデスクトップにコピーしてexcel2016で開き、VBAを実行すると一瞬で処理が終わります。セキュリティの問題だと思うので、2016の「設定」から「セキュリティセンターの設定」に入り、色々いじってみたのですが改善しません。ファイルをNASに置いたままexcel2016でVBAを快適に動作させるにはどうしたら良いのでしょう?

  • VBA ファイル作成時にマクロを含まない

    只今、excelのVBAを学習中です。早速ですが質問させていただきます。 excelファイルを作成し、入力されたファイル名で保存するプログラムを組んでいます。 その際、作成したファイルがマクロを含んでしまうのですがマクロをふくまないようにする事は可能でしょうか? VBAを始めたばかりなので初歩的な質問で大変恐縮です。よろしくお願い致します。

  • エクセルVBAのサイズについて

    エクセルファイル上にてVBAを記述したところ、 VBAのサイズが64Kを超えるようで、該当のVBAを保存する事ができません。 ただ、一時的に細かく作成したのですが、当初考えていたのは、1回コマンドボタンを押すと処理が完了するように想定していたのですが、現状のままでは、複数のコマンドボタンをそれぞれ押さないとできないと思われます。ちょっとその方法ですと面倒なので、ご質問です。 (当初は、マクロ1を作成したのですが、大きさの問題が生じたため、現状は便宜的にマクロ2・マクロ3という風に当初のマクロ1をわけて保存してあります) 1回の処理で同時に複数のマクロを実行する方法はあるのでしょうか? もしそのような方法があれば教えてください。 わかりづらい質問かもしれませんが宜しくお願いいたします。

  • 【Excel VBA】1つのファイルにまとめる方法

    1つのフォルダの中に複数のExcelファイルが保存されています。 seat1だけを1つに集めたExcelファイルを新規で作成したいです。 ※シート1をどんどん追加させるイメージです。 ※フォルダの中に入っているExcelファイル数は毎月変わります。 手順(1)フォルダに入っているExcelシートを開く 手順(2)sheet1を【シートの移動またはコピー】新規BOOKにコピー 手順(3)フォルダに入っているExcel分繰り返す。 手順(4)シート名を変更する。    どういう風にVBAコードを記入すればいいかわからないので教えていただきたいです。どうぞよろしくお願いいたします。

  • VBAマクロを含んだEXCELファイルが開けません。

    どうも。 VBA初心者です。 VBAのマクロを含んだEXCELファイルを作成、保存したのですが、EXCELファイル自体が開けなくなってしまいました。 コードの内容は繰り返し制御の練習(WHILE LOOP)ですので、たいしたことはしていません。 原因がお分かりになる方は教えてください。

USBハブの使い分け方法
このQ&Aのポイント
  • USBハブにはバスパワーのものとセルフパワーのものがあります。どちらを選ぶべきかについて解説します。
  • バスパワーのUSBハブは、パソコンのUSBポートから供給される電力で動作します。一方、セルフパワーのUSBハブは専用の電源アダプタから電力を供給するため、多くの機器を同時に接続する際に重宝します。
  • バスパワーのUSBハブは、電力供給が制限されているため、接続する機器の消費電力が高い場合には正常に動作しない可能性があります。そのため、消費電力が高い機器や外部電源が必要な機器を接続する際には、セルフパワーのUSBハブを選ぶことをおすすめします。
回答を見る

専門家に質問してみよう