はじめに
Sequence MakerはExcelから測定器を制御可能にするアドインです。Sequence Makerは測定器の自動制御が可能なので、長時間のデータ収集などでも活用できます。しかし、Sequence Makerにはブックを自動保存する機能が無いため、万が一データ収集中にExcelが強制終了してしまったりすると、それまで取得したデータが消えてしまうことになります。これは大変に悲しい事です。この記事では自動保存機能をVBAによって実現する方法を解説します。Sequence Makerについての詳細は以下の記事を参照ください。
お断り
本記事の内容はSequence Maker開発元の公式見解ではなく、あくまでも個人が趣味の範囲内で執筆しているものです。記事の内容について開発元へ問い合わせることはお控えください。ご質問・要望などは各記事のコメント欄へお願いいたします。
VBA
まずはVBAで保存機能を作成します。と言っても、VBAエディタを起動し、標準モジュールを追加し、保存の機能を書くだけです。
Option Explicit
Sub AutoSave()
ThisWorkbook.Save
End Sub
Excelのブックはマクロ有効ブック形式(.xlsm)で保存しておきます。
Sequence Makerから保存処理を呼び出す。
Sequence MakerはVBAのサブルーチンを呼び出して実行することが可能です。
Sequence Makerで保存したいタイミングで先ほど作成したサブルーチンを呼び出します。
以下のように書けば呼び出せます。
#MACRO(AutoSave)
実際には、何か一連の処理が終わったあたりで、適宜呼んであげれば良いと思います。
繰り返し測定を行うような場合は、1回の繰り返しの最後とか。
これで適宜自動保存されるようになります。
まとめ
今回はSequence MakerとVBAを組み合わせて自動保存を実現してみました。Sequence Makerには無い機能をVBAで拡張できるのはなかなか便利です。