よくかんでたべること

そのままのみこまずに、ね。

3ヶ月AccessWEBアプリに取り組んだ感想

この記事はOffice 365 Advent Calendar 2015 – Adventar
www.adventar.org
に参加しています。

改めまして、かなりやと申します。8年ほどAccess VBAによる業務アプリケーションの開発や保守に携わってきました。

忘れもしない2015年9月29日(イチリュウマンバイテンシャビと朝礼で社長が話していたので)の夕方に、office365に挑戦することになりました。
以前から気になっていたWEBで動くAccessというものを調査することにしました。

最初はAccessをWEBで動かすには?を知りたかったのですが、Office365のページを読んで契約プランの違いがイマイチ理解し難い上にOffice ProPlusが必要だとか, Sharepoint,Yammer,Lyncは名前が変わってSkype for buisinessに云々....................orz
ただAccessをWEBで動かしたいだけなのに、と購入前担当のサポートセンターに半泣き状態で電話したことが今では懐かしく感じます。

サポートセンターのかたに疑問や質問に丁寧に答えていただきその後は少しづつ理解が進みました。会社で相談会に行かせてもらったり、オンラインセミナーを受講したり、本を買ったり、MSのパートナーに登録したり、FacebookTwitterでOffice365情報をフォローしたり、おかげでやっとこ専門用語についていけるようになりました。

しかし、本題のAccessアプリ構築にたどり着くまでにはまだまだ険しい道がありました。
MSのドキュメントサイトを見ながら試作に取り組み始めたのですが、今まで培ったAccessの知識がまったく役に立ってない気がしてなりませんでした。理由は主に以下の4点です。

  1. ビューって?
  2. Access VBAが使えない
  3. SQLが使えない
  4. 情報が少ない

■ビューって?

MVCのViewかと気がつくまでに少し時間がかかりました。Accessでビューと言われるとCreate Viewのほうかと思ってしまいまして...
Accessアプリのビューには、リスト(単票)、データシート(帳票ではなくデータシート)、空白の3種類があります。これまで私が作ってきたのは帳票フォームがメインでしたから、なかなか苦戦しました。

Access VBAが使えない

Access Servicesではサブルーチンやファンクションをゴリゴリ書いて制御することができません。
かわりにデータマクロやUIマクロ、そして部品のイベント(クリックと更新後処理ぐらいしかない)を使って日本語で指令を組み立てる必要があります。コード書けない縛り、こちらも相当苦戦しました。

SQLが使えない

SQLはわりと得意なので結合や入れ子文やサブクエリをガシガシ書いてたのですが...
Accessアプリではクエリデザインしか用意されてません。
VBASQLも使えないのは、まるでマホトーンにかかったような気分でした。

■情報が少ない

Access2013などの書籍はありますが、Accessアプリに関する記述はほんの一部分のようです。
検索エンジンでもAccessのデスクトップアプリの情報のほうがはるかに多いです。
公式ドキュメント Access 2013 カスタム Web アプリ リファレンス を見て悪戦苦闘していましたが、
最近は mukkumuku.blogspot.jp こちらの情報がわかりやすく充実しているので、本当にお世話になっております。

さて、最初はもがいていたAccessアプリですが今ではすっかり慣れ、簡単な自分用のアプリをいくつか作れるようになりました。
コード書きには不便かもしれませんが、自由過ぎないぶん覚えることが少なく済むという利点を見つけました。
なので、コードを書けないかたでもシンプルなWEBアプリができるのではないかと思います。

最近はSharepointアプリにも手を出すようになりました。こちらも慣れるまで最初はジタバタしておりましたが、慣れてくるにつれて楽しくなってきております。来年はVSを使ってAccessアプリと組み合わせて面白いことができるようになりたいと思っています。

ありがとうございました。良いお年を!