1) マクロをコーディングするだけなら、VBA を使用する方がはるかに安価です… MS Office に付属しており、Office で学ぶ/使用するのが少し簡単です。 MS Officeに付属しており、Officeで学ぶ/使用するのが少し簡単です。あなたがオフィスマクロよりも多くのコーディングをしたい場合は、おそらくVisual Studioに投資したいと思うでしょう。 VBAとVisual StudioのVBコードの間でいくつかのコーディング経験が移行されますが、Visual Studioは、デスクトップアプリケーションをコーディングするための完全なコーディング環境プラットフォームです。 Visual Studioは、デスクトップアプリケーションをコーディングするための完全なコーディング環境プラットフォームであり、より多機能であるため、学習曲線はより急峻です。 VBAコードはMS Office内でしか動作しないため、役に立つでしょう。 そのため、VBAのコードを書くには、MS Excelを開かなければなりません。 VBAはまた、Excel内のデータや範囲の操作を主に扱うので、Excelの動作についてより深く理解することができます。 Visual StudioはOfficeだけにフォーカスしているわけではないので、Excelの学習にはあまり有利ではありません。
3) すべてのExcel 2007 VBAが必ずしも以前のバージョンで動作するわけではありません。 それを理解した上で、ほとんどのコードは再コード化する必要なく翻訳されます。 以前のバージョンのExcelでVBAマクロをプログラムした場合、新しいバージョンでもほとんど(いや、常にではありません、例外もあります)動作します。 Excel 2007 のコードが以前のバージョンで動作しない主な理由は、新しい構文や以前のバージョンでは使用できなかったオブジェクトを使用した場合です。