• ベストアンサー

VBAのバージョンアップ

エクセル2002使用です。 エクセルVBAで社内共通の日報を作成しました。 しかし、ソフト作成技術の未熟さに加え、後から追加する項目も出てくるので、バージョンアップ(マクロの記述の更新)をしたいのですが、どうすれば良いのかわかりません。 日報ですので毎日データーが蓄積されていっているのでデータは残したままバージョンアップをしたいです。 HPで調べるとアドインの作成とかあるのですが、もう一つよくわかりません。わかりやすいHPなどの資料が欲しいのですが・・・ http://www.asahi-net.or.jp/~ef2o-inue/ このあたりを参考にしているのですが、どのような方法が一番適切なのかよくわかりません。 よろしくご指導願います。

  • ken123
  • お礼率73% (299/409)

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

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.4

>1)をマクロで操作することはできるのでしょうか? 可能ですが、BASの読込機能(テキスト読込)とモジュールの書き込み機能(行単位書き込み)を備えなくてはいけないので面倒です。 なので、VBAのコマンドで「(書き換え対象)モジュールの削除」と「(新規)モジュールのコピー」を行う方が遙かに簡単かと思います。 (いずれにしても、モジュール操作のVBAコマンドを覚える必要があります。) 複数のモジュールを安全に書き換えるには、モジュール更新のチェックなどの仕掛けを備えた方が安全かと思います。 他の方が書かれるようにアドイン型式にして、アドインファイルとアドインを自動更新するファイル(もしくは更新機能を日報ブック仕込む)にと共に配布すると、一括して更新できるので、大幅な改変があっても自在に簡単に可能かと思います。 基本的な情報は、貴方の探したHPでほとんど入手可能です。

ken123
質問者

補足

hana-hana3 さま早速のご回答ありがとうございます。 ご指摘いただき巻いたとおりアドイン型式でがんばりたいと思います。 少し勉強しますので、またよろしくお願いします。 >BASの読込機能(テキスト読込)とモジュールの書き込み機能(行単位書き込み)を備えなくてはいけないので面倒 の意味もよくわかりました。 ありがとうございます。

その他の回答 (3)

  • ta123
  • ベストアンサー率51% (95/186)
回答No.3

参考にされているHPの「配布の問題」で色々の方法を説明されていました。モジュールの入れ替えやアドインについても触れられています。(このページが分からないということでしょうか?) ところで「シートのコピー」とはワークシートそのものをコピーする("編集" -> "シートの移動またはコピー")と言う意味ですが、これでも問題が発生するということでしょうか。

参考URL:
http://www.asahi-net.or.jp/~ef2o-inue/haifu/sub06_010.html
ken123
質問者

補足

ta123さま、早速のご回答ありがとうございます。 待ったくの勉強不足でした。すいません。 シートをコピーできないとは、時間の記録をとっていて、セルに値を入力した時点で時間を自動入力しているので、移し変えると時間がかわってしまいます。 少し勉強しますのでまたよろしくお願いします。 とりあえずしなければならないことはわかりました。 ありがとうございます。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 他人に配布するのに、ブックでは製作者がいない環境での管理に都合が悪いから、アドイン型(xla)にするわけで、インストールする場所を特定させて、その都度、アドインだけを送りつけ、共有スペース(C:\Program Files\Microsoft..)に入れればよいと思います。 ただ、分りやすいHPは分りませんね。見ようみまねで覚えるのだと思います。単に、xla のアドイン型に換えて、不都合が出れば、その部分を直すようなことをし、試行錯誤で最初は作り上げるものでしょうね。Personal.xls などと変わらないと思います。

ken123
質問者

補足

Wendy02さま、いつもありがとうございます。 ちょっと勉強不足すぎました。ようやくアドインの意味もわかりました。 少し勉強する時間をください。 ちょっと試行錯誤してみます。

  • ta123
  • ベストアンサー率51% (95/186)
回答No.1

アップデートする際の条件が分かりませんが、以下の2方法があると思います。 案1)新規マクロをXXX.bas形式でエクスポートし、各日報ファイルにインポートする。    (VBEのファイル -> ファイルのインポート、エクスポートを利用) 案2)改版した日報ファイルに既存の日報ファイルのシートをコピーする。    

ken123
質問者

補足

ta123さま早速のご回答ありがとうございます。 2)は、シートの設定上、利用することができません。 (一部セルに上書きすると値が変わる設定があるため) 1)をマクロで操作することはできるのでしょうか? 複数の人間が利用するのでファイルのインポート、エクスポートができないことが考えられます。 もし、お時間がございましたらよろしくお願いします。

関連するQ&A

  • EXCEL VBAでデータをどんどん入力したいのですが・・・

    こんにちは。 EXCEL VBA の初心者です。 下記のURLのようなVBAを作りたいのですがうまくいきません。 http://www.asahi-net.or.jp/~ef2o-inue/vba_k/sub04_080.html 3~4項目のフォームを作って登録ボタンでシートにどんどん 記録されていくマクロを作りたいのです。 上記のURLを参考に作っていますがうまくできません。 どなたか助けて下さい。 よろしくお願いいたします。

  • 【VBA】郵便番号を入れたら住所が出てくる仕組み

    http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_130_050.html このサイトを参考に見たのですが かなり難しそうなのですが これは簡単にできるものでしょうか?

  • VBAでどのようにすればいいのでしょうか。

    Excel2007でCSVファイルを取り込むVBAで作成しています。 下記のURLを参考にしています。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_030.html 皆さんにお聞きしたい事があり、投稿させていただきました。 CSVファイルの先頭行にタイトル行が指定されている場合、VBA上で除外する事は可能でしょうか。 できれば Do Until objTS.AtEndOfStream ※この中で・・・ Loop すみませんがどうかアドバイス宜しくお願いします。 では失礼します。

  • VBAについて

    よくわかっていないので、質問がおかしくてすいません。 VBAで作成したマクロ?をEXCELで動かそうとしています。 その際、EXCELのバージョンが異なったらそのマクロは動作しないのでしょうか?

  • 計算式・マクロを含むexcelシートの配布

    計算式・マクロを含むexcelシートの配布を行います。 その際の注意点等がありましたら、ご指南頂ければ助かります。 http://www.asahi-net.or.jp/~ef2o-inue/menu/menu06.html 上記サイト等を参照しましたが、私の浅い知識では把握しきれず、計算式を設定したexcelシートがアドインデータとなるのか、また配布する際に文書作成もしくはcsvデータの出入力のみしか行わない配布対象の担当者にどのように指導しればいいのか分かりかねる状況です。 そのままexcelシートを一旦配布しても良いものでしょうか? リボンメニューに実行ボタンを追加作成したのですが、他PCからシートを開いた際にボタンがなくなっておりましたので、配布方法を見直さなければならないと考えております。 宜しくお願い致します。

  • Excelのマクロに関して質問です。

    Excelのマクロに関して質問です。 現在、下記のサイトのマクロを参考にフォルダ内のブックを一括印刷をするマクロを組もうとしています。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_120.html ところが印刷部数を 「objWBK.PrintOut」の後に「Copies:=2」などと付け加えれば2部印刷するかと思ったのですが無理でした。 部数を指定する良い解決方法があればお教えください。 よろしくお願いいたします。

  • エクセルVBAで、特定のシートからボタンで別シートへ指定行より下へ順番

    エクセルVBAで、特定のシートからボタンで別シートへ指定行より下へ順番に転記し、蓄積していく方法を教えてください。 ☆特定シート(日報報告) ----------------------------------   日付 銘柄  合計 1  1/1 りんご  5 2  1/1 みかん  8 ----------------------------------- ※日報報告は毎日入力し報告すれば削除します ↓↓日報報告を毎日入力し月締め報告へ蓄積していきます ☆転記シート(月締め報告) ------------------------------------    日付 銘柄 合計 1  1/1 りんご 5 2  1/1 みかん 8 3  1/2 りんご 7 ← 同じ日報報告シートより日付順で蓄積 4  1/2 ばなな 3 5  1/3 りんご 6 ← 同じ日報報告シートより日付順で蓄積 ------------------------------------- ※月締め報告は、転記した日報報告の蓄積をしていきます。 上記表で、日報報告を月締め報告へ転記することは マクロを使用して出来たのですが、 蓄積していく方法がわかりません。 VBAも初心者です。 説明等足りない部分もあるかと思いますが、 みなさまの知恵をお借りできたらと思っております。 エクセルバージョンは2003です。 宜しくお願いいたします。

  • Officeのバージョンアップ

    初めまして。 今まで会社全体でExcel97やAccess97を使用して業務を行っていたのですが、昨今取引会社からOffice2007形式のデータが送られてくることが増え、Officeのバージョンアップを検討することになりました。 ここで問題なのが、旧式のVBAやマクロ等が2007で正常に動くのか、またVBAやマクロの変更が必要ならどれほどの規模になるのか。 過去に同様な移行をされた方がおられましたらアドバイス頂ければ幸いです。 全部組みなおしだと、製作者:退職、ドキュメント:不明なのでえらい事に・・・・・・

  • フォルダのファイルを開く

    ExcelVBAについて。 「フォルダ内の「*.xls」ファイルを開く」という処理をVBAで行いたいですが、 ネット上の情報( http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_120.html )よりも 簡素に記述することは可能でしょうか? よろしくお願いします。

  • EXCELのV4マクロをVBAに書き直せるか?

    EXCEL2000にてV4マクロにて書かれたEXCELアドインがあります。 これをEXCEL2000のVBAに書き直して欲しいという依頼がありますが、 V4マクロよりVBAにて無理な事や注意点があれば教えてください。 よろしくお願いします

専門家に質問してみよう