Office 2003 Service Pack 3のダウンロードをきっかけに、以前懸案だったAccess 2007のランタイム版を探してみました。以前探したときは6月リリース予定とありましたが、現在はありました。
ただし、英語版のみで日本語版はないようです。インストールパッケージを作成するディベロッパーエクステンションズもリリースされていましたが、これまた英語版です。
今は特に必要ないので、とりあえずダウンロードしましたが、インストールはしていません。こういう状況からしてマイクロソフトは本当にOffice2007を普及させたいのか、と思ってしまいます。
Access 2007 Runtime ダウンロードサイト
Access 2007 Developer Extensions ダウンロードサイト
カテゴリー: Access
Office 2003 Service Pack 3
マイクロソフトのダウンロードサイトで17日からOffice 2003の最新サービスハパックのダウンロードが始まりました。ひとつ確認したいことがあってインストールしてみました。
確認したかったことは、「Access 2003(ADP形式)でSQL Server 2005を編集可能かどうか」です。
結果は・・・やはりできませんでした。それでは今はマイクロソフトから公式の見解がでているかどうか調べてみました。ありました!昨年の情報ですが、新しいAccessがリリースされても変わっていないようです。これを読むとマイクロソフトは対応する気がないですね。
Office Access 2003 または Access 2002 で SQL オブジェクトのデザインを作成または変更しようとすると、エラー メッセージが表示される
Office 2003 Service Pack 3 (SP3) ダウンロードサイト
Access 2007のランタイムは何処に?
Accessアプリケーションはランタイムと同時に配布すれば、個別にパッケージを購入してもらう必要はありません。
2002バージョン(XP)まではOfficeのDeveloperパッケージに収録されていましたが、2003になって.Net Frameworkと開発ツールが統合され、VSTO(Microsoft Visual Studio Tools for Office)とともに収録されるようになりました。
Visual Studio 2003(2002)のときはMicrosoft Visual Studio Tools for Office 2003でした。
Visual Studioが2005にバージョンアップされるとどうじにMicrosoft Visual Studio 2005 Tools for Officeとなりましたが、Officeのバージョンが2003のままでした。
Office System 2007が販売され、VSTOもバージョンアップされました。
Microsoft Visual Studio 2005 Tools for the 2007 Microsoft Office System
が、しかしです。Accessのランタイムだけはどうもまだ2007に対応するものがないようです。1時間以上いろいろとCDの中を探したり、マイクロソフトに問い合わせてみたりしたのですが、
Introducing the Access 2007 Developer Extensions and Runtime
英語サイトではまだリリースされていないというページが・・・。開発者のブログには6月頃という情報もあるようですが、正式発表はまだのようです。
今回はついに無償で配布されるようなのですが、リリースから4ヶ月経過してこの状況はいかがなものでしょうか。やはりマイクロソフト内でのAccessの重みは低いようです。
テキストのエクスポートウィザードが起動しない
Access2003でインポート/エクスポート定義を作成しようとエクスポートウィザードを起動しようとしたが、何回やっても途中で終了してしまう。再起動しても同じ。
プログラムファイルが壊れてしまったのかと思い、すでに作成済みのエクスポート(VBAコード実装)を試してみるが、正常に動作する。
理由もわからずネットで原因を追究してみるが、わからない・・・
ファイル形式はAccess2000形式で作成していたので、あきらめ半分Access2000でエクスポートウィザードを起動してみる・・・・・動いている
もう一度原因を考えてみる。そういえば、最近Microsoft Update(旧Windows Update+Office Update+α)でOffice関連のパッチをインストールしたような。
Access 2002 更新プログラム(KB904018)
「リンクされている Microsoft Excel ワークシートへの新しいデータの追加や既存のデータの編集をユーザーが行えるという Access 2002 の機能が削除されます。」
Office 2003 更新プログラム (KB907417)
「Microsoft Office Excel 2003 および Microsoft Office Word 2003 の更新プログラムが公開されました。この更新プログラムは、Excel 2003 および Word 2003 で .NET Framework 2.0 を使用するアドイン、スマート タグ、またはスマート ドキュメントが読み込まれない可能性がある問題を修正します。」
直接の影響ではないようだが、間接的に影響を与えているのはどちらだろうか。
現在、同じパソコン内にAccess2000、2002(XP)、2003をインストールしてある。
Access2000・・・動作する
Access2002・・・動作する
Access2003・・・動作しない
何が影響を与えているのかはっきりしないが、仕事が進まないのでこの辺で保留しておく。
Accessの資産はどこまで.NET化できるのか?
@ITというサイトで上記タイトルの「Access変換ウィザード」試用レビュー が掲載されている。「Access変換ウィザード」とは、私も先日評価してみた「Microsoft Access Conversion Wizard for Visual Basic .NET」である。4月末に公開されたこのツールはAccess MDBで作成されたプログラムをVB.NETへ変換するというものである。
筆者の評価は私よりも少し使えるかも、という評価ではあるが、VBAコードについては使えないということで一致している。
最後に、「変換されるコード部分の流用の難しさなど、さまざまな問題点は存在するが、それを差し引いたとしてもAccess変換ウィザードが、AccessとVB.NETの間に存在している距離を縮めるツールであることは間違いないと感じている。」と締めくくっているが、その点に関しては私も同感である。もともとのツールの開発理念が違うのであるから、100%うまくいくということはない。まあ私の感覚としては30%というところなのだが、結局使う側の立場になってみれば、AccessだとVB.NETだということは関係ない。要は使いやすくて信頼があればよいのであって、開発する側もそこを考えて開発ツールについてはいいとこ取りをすればよいと考える。
Microsoft Access Conversion Wizard for Visual Basic .NET
「Microsoft Access Conversion Wizard for Visual Basic .NET」使ってみました。
私の開発した15MBのMDBプログラム(テーブルを除くオブジェクトサイズ)をまず変換ツールを実行する。なかなか終わらない・・・
結局8時間を過ぎても変換が終わらず、途中で中止しました。
大きすぎたので3MBのMDBプログラム(テーブルを除くオブジェクトサイズ)を変換。1時間余りで変換する。しかし、制限事項がかなり変換されておらず起動できない。
一部のみ新規ファイルにしてもう一度変換。しかし、やはり制限事項が変換されていない部分が多く使い物にならない。よく調べると参考項目として利用できそうな部分は少しあるようだ。
Accessをメインに開発している者として、さらにVisual Basic.NETを少しかじった経験から言うと、そもそもAccessとVisual Basicは開発方法が根本的に違うのだ。Visual BasicからAccessへの移行はまだできるかもしれないが、AccessからVisual Basicへの変換は容易ではない。問題は、Accessの高機能なコントロール群にある。特に、サブフォームとコンボボックスの機能をVisual Basicでまねるには相当苦労する。
マイクロソフトはどの辺りまで理解してこの変換ツールをリリースしたのだろうか。Access開発者をVisual Basic.NETに移行させる意図はひしひしと伝わる。しかし、役不足だろう。こんな言い方は言い過ぎかもしれないが、この変換ツールを使った結果、Accessはやっぱりいいなとあらためて思わせるだけではなかろうか。マイクロソフト様、もっと高機能なツール作ってくださいよ!
Access開発者応援キャンペーン
マイクロソフトがこの程「Access開発者応援キャンペーン」と称してAccess開発者のVisual Basic.NETへの移行推進に動き始めました。
技術資料としてPDFやサンプルプログラム、「Microsoft Access Conversion Wizard for Visual Basic .NET 」というAccessデータベースをVisual Basic.NETへ移行する変換ツールなどがアップされています。技術資料を読んでみると、今までマイクロソフトサイトにアップされていた情報とほとんど変わらず、はっきりいって内容は薄いです。変換ツールもまだ試していませんが、変換できない制限事項が大変多く、予想では50%もまともに変換できないでしょうね。特に私のプログラムはアクセス特有の機能を最大限に利用していますから難しいでしょうが、変換された部分だけでも参考になるかもしれませんから、このゴールデンウィークに試してみましょう。
データシート形式は制限事項に入っていますが、コンボボックスは入っていません。以前VB.NETに挑戦したときに挫折したこの2点が変換後どうなるのか気になります。報告は後日。
SQL Server 自習書サイト
Access ADPを勉強するに当たり、SQL Serverも勉強しなければいけないことは周知の事実である。しかし、書籍として売られているものの多くは初心者向けで底が浅いか、技術者向けに小難しく書いてあるかのいずれかである。
そんなときは、Microsoft社のSQL Serverサイトに公開されている自習書を利用すると良い。
データ変換サービス(DTS)やレプリケーション、バックアップなどの管理編だけでなく、「SQL Server 2000 と Access 2000 によるアプリケーション開発」というようなちょうどよい開発編もある。ただし、何事もそうだが、100%書いてあることを信じてはいけない。理解したら実践、実験!!常にいろいろな方面から情報を集めよう。
timestamp型って何
社内でADPの勉強会をしております。SQL Serverのパフォーマンスを向上する方法を調べていると、timestamp型を使用したフィールドを設定するとパフォーマンスが上がるという。どこにそんなことが書いてあるのか。SQL Serverの書籍にもなかなか出てない話です。
Access2003の起動警告を消すには
VBAを利用したマクロウイルス対策として、バージョンアップの度に制約の多くなるオフィスにおいて、ついにアクセスにも来たかというものがひとつ。
起動のときに表示されるマクロの警告です。アクセスはもともとコードの集合体であるため、まったくの新規プログラムであってもコードのないことはありません。よって、テーブルのみでも警告は出る。困ったものです。
消すためには、デジタル証明をつけるしか方法がありません。「ツール」、「マクロ」、「VBE」、そして「ツール」、「デジタル証明」とたどって証明書を選択します。しかし、ここが注意です。もし、証明書をつけたパソコンが故障した場合には、最悪証明書を外せなくなる可能性もあります。
必ず証明書をつける前にバックアップをとり、最悪の場合に備えましょう。