タグ

考察とvbaに関するsnjxのブックマーク (5)

  • xltrail - VBAの差分を表示するGitサブコマンド

    MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました Excelはオフィスで最もよく使われるソフトウェアの一つでしょう。そして単に表計算としてだけでなくVBAも使ってシステムツールとして使われたりします。そんなExcelだけにバージョン管理したいというニーズがよくあり、そのためのソフトウェアも存在します。 そんな中、xltrailは一風変わっています。シートではなく、VBAの差分表示ができるソフトウェアです。 xltrailの使い方 xltrailをインストールする前の差分表示。git diffでは何も出ません。 git diff book.xlsx diff --git a/book.xlsx b/book.xlsx index 70d50ca..9bcf07e 100644 Binary files a/book.xlsx and

    xltrail - VBAの差分を表示するGitサブコマンド
  • マクロのバージョン管理::Route4610

    Excelマクロは手軽で便利な半面、だれでも書き換えられたりするもんだから結構困るケースがあったりする。 例えば、こちらがマクロを組んだExcelファイルを配布したあとに、「動かない!」なんて言われて調べてみると他の人がマクロを書き換えてバグってたりとか。大きく変えられたコードだったら違いに気づきやすいんだけど、ちょっとした変更って探すのが当に大変。 そんなことが結構あったので、マクロはバージョン管理するようにしている。 ざっくりとした内容は、 マクロを組んだExcelファイルを1つのフォルダにまとめる(例: c:\tmp\excel ) 上記のフォルダに新しいExcelファイル(例: マクロExport.xls )を作成 マクロExport.xls のマクロに下記のコードでモジュールを作成 ThisWorkbook シートの Workbook_Open() で、作ったモジュールの Ex

  • VBAのソースファイルをバージョン管理するのを支援するvba-porter.xlaを作りました - 死ぬまでの暇潰し

    これは何? 私が以前勤めていた職場は、とにかくExcelerな所でした。 業務で使うファイルの8割方はExcelです。 重要なデータもことごとく人の手によって肥大したExcelの中に保存されていく・・・。 そんなカオスな状況(※1)にうんざりした私は、気がつくとVBAをコーディングし始めていました。 それまでVBAはマクロの記録ぐらいしかしたことがなかったんですが、 調べてみると、オブジェクト指向の開発もでき、それなりに使えそうで希望が出てきたのですが、 以下の問題がありました。 モジュールを分けてオブジェクト指向開発しても、各モジュールをSVNなどでバージョン管理できない 開発したVBAを他のメンバーに提供する良い方法がなかった(※2) 開発したVBAのトリガを用意するのがめんどい(※3) そこで、上記の問題を解決するために、vba-porter.xlaというExcelのアドインを作りま

    VBAのソースファイルをバージョン管理するのを支援するvba-porter.xlaを作りました - 死ぬまでの暇潰し
  • ExcelVBAのバージョン管理方法 - Qiita

    目的 この記事ではExcelVBAでバージョン管理を行う方法について説明する。 以下のようにWinMergeの差分機能を用いることで、VBAの差分を表示することが可能である。 手順 WinMergeの準備 WinMergeのダウンロードを行う ダウンロードページより「Excelからテキストへの変換プラグイン」のExcelToText.sctをWinMergeのMergePluginsフォルダにコピーする。 例:"C:\Program Files\WinMerge\MergePlugins" WinMergeを起動してプラグインの自動展開を選択する Excelの準備 Excel 2003の場合 Excelを起動 [ツール]→[マクロ]→[セキュリティ] [信頼できる発行元タブ]を選択する。 [Visual Basic プロジェクトへのアクセスを信頼する]にチェックを付与する。 Excel 2

    ExcelVBAのバージョン管理方法 - Qiita
  • 配布の問題(「配布」とバージョン管理)

    こんどは、バージョン管理と新しいバージョンの配布の観点で説明します。既に説明を加えてしまってあるので簡単に説明することにします。 データが書き込まれたExcelブックのVBAだけを更新する問題。 これまでの説明でもうお解りのように、Excelワークブックはシートデザイン、計算式、マクロといった「仕組み」と利用者が登録(保存)した「データ」が1ファイルに収まってしまうため、一見ハンドリングが良いように見えますが、では「仕組み」だけをバージョンアップするのに苦慮します。 単に、モジュールを差し替えるような仕組みを考えると「モジュール自動入れ替え機能」のようなものが考えられますが、次のような問題があります。 この「モジュール自動入れ替え機能」の場合は、ブックを開いた時に新しいモジュールの存在を検知して入れ替える仕組みなので、事前にこのモジュールを運用するワークブックに組み込んでおく必要がある。

  • 1