2016-08-09 46 views
0

Excelでビルトインされたテキストエディタの代わりにVisual Studioをコーディングに使用する利点と欠点について、私ができることとできないことについての説明を探しています。VBAエディタの代わりにVisual Studioを使用する

+3

Excelで実行するVBAコードを作成する場合は、Excel VBエディタを使用してください。 Excelを自動化するための.NET/VSTOコードを作成する場合は、Visual Studioを使用します。 –

答えて

0

開発言語から、Excel EditorはVBA、VSはC#/ VB.NETです。あなたは軽い機能を持っている場合は、VBAを直接使用することができます。大きな要件がある場合は、.NET/VSTOが適しています.VSでコードを管理すると便利です.VSTOはマネージコードです。 VBAよりも優れていますVSTOを使用すると、カスタムOffice UIを使用できます。プロジェクトを配布するには、マクロを有効にしてオフィスファイルをコピーする必要があります。 ClickOnceまたはWindowsインストーラを使用して.net/VSTOソリューションを配布できます。私の観点から

2

使用VBAエディタ(VBE)あなた

  • は、自分のため、アドホックのアプリを開発する場合、友人
  • は、プロジェクトに取り組んで一つだけある
  • 主Officeオブジェクトモデルで動作します - システム、Web、データベースなどと通信しません。
  • ソースコントロールを使用しないでください(注:Rubberduckはこれを行う場合に役立ちます)
  • リファレンスフォーム
  • からあまりにも多くのDLLが含まれていない新しいプラットフォーム(.NETに)

注意を勉強したくない、私は上記のすべてやったと私はのためだけVBAと一緒に暮らすことができ長すぎる問題がなく、いくつかの点でVBAはVSTOよりはるかに優れています。デバッグに

使用VSTOを(ここで私は意味、あなたはVBAをデバッグしているほとんどすべてを変更することができますし、まだ続けることができるでしょう、VSTOで同じことを行う方法はありません)もしあなた

  • は、システム、Web、XML、データベースタスクのサポートを強化したいと考えています。 NETは あるはるかに良く、特に我々は、Webやデータベース

  • バージョン管理 (GIT、SVN、TFS、PERFORCEの)ために(いつかボックスのうち)より良いサポートを持っていると思います ものについて話している場合
  • は(これは同様に、実際に痛みを伴う することができる)の依存関係に問題を持っていないでしょう

  • は税込NamedRangeのような新しいVSTOオブジェクトを使用する必要はありません。イベント

  • は、私はVSTOは、Officeオブジェクトモデルに新しい何かをbrigs、そしてあなたがVSTOをカウントしていない場合、それはないと思ったとき、私は数年前に自分を覚えて新しいプラットフォームに

を学びたいですオブジェクト。したがって、Excelオブジェクトモデル(レンジ、シート、ワークブック、計算を使って操作)だけで作業している場合は、VBAだけでもライブできます。 私もVSTOすることはできません簡単create UDF(カスタム関数)

でもそのMSは、VSTOを改善/ /更新を追加するための、あまりにも多くの努力を投資するつもりはないように、彼らはむしろオフィスのAPIに焦点を当てているようだということを覚えて

VSTO blog - comments

あなたの質問ベンのためのおかげで、我々はすでに公に私たちはオフィスの次のバージョンでVSTOまたはVBAをオフにされないことを発表しました。新しい投資のすべては、Apps for OfficeとApps for SharePointにあり、Office 365 APIをより堅牢にします。 私たちは、VSTOまたはVBAで任意の将来の投資を行うことはありません

私はVSTO反対だが、私は、私は毎日、4年以上のためにそれを使用して戻ってきたではないよみたいに見えるかもしれません迅速なテストや迅速なプロジェクトのためだけにVBAに

ご希望の場合

関連する問題