Access ADP廃止に対応する 4つの方法
Access ADP廃止への対応策を模索中なのは前回同様。ちょっとだけ方向性が見えてきたので、今回はそのネタです。
代替策の候補は4つ。
- Access(accdb形式) + ODBC接続に書き換え
- WindowsFormアプリで作り変え
- WPFアプリで作り変え
- ASP.netにてWebサーバー経由でのデータ操作
一見、1のAccess(accdb形式) + ODBC接続に書き換えが簡単のように思えます。しかし安易な選択をするといずれまた同じことの繰り返しになる可能性があります。最低でも5年後に存在し得るシステムで組んで行かなければなりません。そういう観点で考えると我が社ではAccessから脱却せねばならない理由が浮かんで来ました。
VBAそのものがいつまで存続するか不安。
考えてみると、ADP形式が突然なくなったわけですから、VBA(Visual Basic for Applications) がいつ同じ運命になってもおかしくないのでは?!と考えてしまいます。この点に関してマイクロソフトが正式なアナウンスを出しているわけではない(と思う)のですが、次のような過去の記事を見つけました。
これはMAC版Officeに関しての一連の記事の一部です。上記リンク先の後半にVBAに関する記事執筆者の予想が記されていました。 2008年の記事です。その後、この路線が変更になったのかどうかは定かではありません。単なる憶測、推測であってほしいところです。
そもそも、VBAのもとはVB6.0だそう(Office2010に搭載されているVBAは7.0)。一方現在のVisualBasic(VisualStudioに含まれている.netベースのあれです。)などは、見かけ上は似ているように感じますが、ある意味別物と考えた方がよさそうなものです。オブジェクト指向という今の流れを考えると、VBAを離れ、VisualBasicやVisualC#に移行しきってしまった方がむしろすっきりするのでは?と考えてしまうのが人情というものでしょう。
VBAは便利すぎた。
その気になればかなりの事が出来てしまうのがVBAです。
ディレクトリの操作や、メールの操作・・・。Accessをフロントエンドとして、データベスとしてはほとんど使わない、別物のアプリとして活用した利できます。情報はいくらでもあります。本屋さんに行くとExcel VBAの入門書が数多く置かれています。VBAはAccessやExcelに標準で搭載されているわけですから、費用面でのハードルも低いわけです。しかし、今考えてみるとそれがあだになったのかもしれません。
VisualBasicでのWinFormやASP.netでのアプリ開発も行ってはいますが、ついついVBAで色々とやってしまいます。売り物にするわけではない社内アプリの場合、自己責任で出来ますのでとにかく便利なんですね。結果、置き換えねばならないものだらけ。早いところ脱却しないといずれ大変な事になってしまいかねません。
Officeのみならず、SQLServerまでもがどんどんクラウド化する方向性を考えると、VBAが今後どのような立ち位置になるのか、素人の私には見当もつきません。もし仮にある日突然廃止が発表されたら…
という訳で自分の場合、「Access(accdb形式) + ODBC接続に書き換え」の線はなしかなと考えるようになりました。
※今回の記事はあくまで自分が置かれている環境と自分のスキルでの話です。VBAの持つ潜在能力や可能性を否定する気は毛頭ないですし、ある特定の手法を推奨するものでもありません。
コメント