始める前に
ファイルを変換する前に、VBA コード内の互換性のない API を更新することをおすすめします。ステータスが「Supported exactly」のファイルについては、ステップ 1: ファイルを変換するに進んでください。
互換性のない VBA API を変更する
ステータスが [回避策でサポート] または [調査が必要] のファイルについては、Apps Script で変換後に回避策と修正を適用できますが、ファイルを変換する前に、まず使い慣れた VBA コードを変更することをおすすめします。
互換性レポートで「回避策でサポート」または「調査が必要」とマークされている API ごとに、次のことをおすすめします。
- API によって実行される関数が VBA マクロの正常な動作に不可欠でない場合は、VBA コードから削除します。その場合は、サポートされている VBA API を使用して同様の動作を実装するようにコードを変更します。
- ステータスが [回避策でサポート] の API の場合、サポートされている VBA API に切り替えることができない場合は、VBA API をそのままにします。Apps Script に変換した後、変換された Apps Script コードのコメントに、この API の既知の回避策が推奨されます。
- 問題が 実装されていない言語構造に起因する場合は、それらの構造を使用しないようにコードを書き直してください。
ステータスが [Needs investigation] の API については、コードに次の API が含まれているかどうかを確認します。
Adodb.connection
CreateObject
: この API は、データベースやエンタープライズ リソース プランニング ソフトウェアへの接続によく使用されます。Shell.execute
OleObject
「はい」の場合は、これらの API が属するファイルを変換せずに、他のオプションを検討することをおすすめします。これらの API は、データベースへの接続やローカル リソースへのアクセスなど、マクロの重要なオペレーションを実行する傾向があるため、一般的に Apps Script は適切なソリューションではありません。
ステップ 1: ファイルを変換する
- パソコンで Google ドライブを開きます。
- 右側のパネルで、マクロ コンバータ アドオン
をクリックします。サイドパネルが表示されていない場合は、右下の「サイドパネルを表示」アイコン をクリックします。
- [ファイルとフォルダを追加] をクリックします。Macro Converter は Excel ファイルのみを認識します。
- 変換するファイルまたはフォルダを選択して、[選択] をクリックします。一度に選択するファイル数は 2,000 個未満にしてください。
- 変換後のファイルの保存先を変更するには、[変換後の保存先フォルダを変更] をクリックして、目的のフォルダを選択します。それ以外の場合は、ファイルはマイドライブ フォルダに保存されます。
- [変換] をクリックします。
- 変換が完了したら、[結果を表示] をクリックします。
ステップ 2: 変換したファイルをテストする
Apps Script コードを実行する
ファイルを変換したら、Apps Script 関数をテストします。変換したファイルを、Excel ファイルで通常使用するデータでテストします。可能であれば、変換後のスプレッドシート ファイルの出力と元の Excel ファイルの出力を比較します。
トリガーをテストする
ファイルに onOpen()
、onEdit()
、onClick()
などのトリガーが含まれている場合は、トリガーもテストします。一部の VBA トリガーは自動的に変換されないため、Apps Script で対応する必要があります。一般的な問題に対処するをご覧ください。
ReadMe ファイルを確認する
変換されたファイルとともに ReadMe ファイルが生成された場合は、ReadMe ファイルに記載されている変換の問題を確認します。
- テストしていないケースで問題が発生する可能性がある場合は、推奨される変更をコードに適用します。
- 考えられるすべてのシナリオをテストし、すべてが意図したとおりに動作する場合は、変更を行う必要はないでしょう。
ステップ 3: エラーを修正する
ファイルのテスト中にエラーが発生した場合は、変換されたコードのエラーを修正するをご覧ください。
コードがエラーなしで実行されたが、結果が期待どおりではない場合は、ファイルの ReadMe ファイルを開きます。各セクションを確認して、問題の原因を特定し、推奨される修正を適用します。
エラーを修正したら、ファイルを再度テストして、すべてが意図したとおりに動作することを確認します。
関連記事
- Macro Converter アドオンの概要
- VBA マクロの互換性を確認する
- 変換されたコードのエラーを修正する
- 一般的な問題に対処する
- Macro Converter のチュートリアルを見る
- 互換性のある VBA API のリスト