「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>VBA移行]] * 目次 [#t1f340a6] #contents *概要 [#l8816c2b] -Access2013からは、Access ADPの機能がなくなった。 --Access ADPは、SQL Serverに直接接続して使用する機能。 --SQL Server側のOLE DB廃止決定に伴い、一足先にAccess ADPが廃止された。 -ここでは、この、マイグレーション・パスを調査する。 *前提 [#a998b668] 前提として以下の情報が必要になる。 **Access ADPへの移行 [#c5cf517b] 「[[アップサイジング・ウィザード>#c377fbaa]]」によって、~ Accessのスタンドアロン(*.accdb形式)からADP(*.adpファイル)へ移行されている。 ** *.accdeファイルと*.accdbファイル [#z3d95d2d] 分割ツールを利用すると*.accdbファイルを*.accdeファイルに変換できる。 *** *.accdb [#l896b045] -Access2007以降のAccessのデスクトップ データベース・ファイルに付く拡張子 -内部で使うときは「.accdb」のまま配布するなど。 *** *.accde [#ed772e97] -.accdeファイルとしてデータベースを保存すると、 --内部で以下のような処理が行われ、 ---すべてのVBAコードモジュールがコンパイルされ、 ---編集可能なすべてのソースコードが削除され、 ---コピー先のデータベースが圧縮される。 --下記のような差異が生まれる。 ---VBAコードの機能を保持するが、コードを表示または編集できなくなる。 ---デスクトップ データベースは引き続き通常どおり機能する。 -外部に配るときは「.accde」に変換するなど。 ***参考 [#j0aa40cb] -[[VBA コードをユーザーに表示しない - Access>https://support.office.com/ja-jp/article/vba-%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81%AB%E8%A1%A8%E7%A4%BA%E3%81%97%E3%81%AA%E3%81%84-ce6ab610-af07-4008-91e0-1ef1b796ff18]] -[[.accde ファイルの制限について - マイクロソフト コミュニティ>https://answers.microsoft.com/ja-jp/office/forum/office_365solo-access/accde/551c645e-bf11-40ba-a13a-cc2401cffe60]] *詳細 [#q1fe0094] 以下のマイグレーション・パスが考えられる。 **Microsoft [#k767256f] -*.accdb ファイル形式のデスクトップ データベースの作成が引き続きサポートされる。 ***Access アプリへの変換 [#ede58c3d] -SQL ServerテーブルをAccessにインポートすると、アプリケーション用のフォームが自動的に作成される。 -フォームの機能を拡張し、ユーザーが Web 上でそのアプリケーションを使用できるようにすることができる。 -ADP で使用している一部の機能は利用できなくなる。 ***・・・ [#g26a19f3] ***.NET Framework へのアップグレード [#g7442c58] .NET Framework で再構築(ADPのSQL Serverテーブルを使用)。 ***参考 [#pdf69cbc] **3rd party [#v8b7005e] ***dbSheetClient [#y86af305] 処理方式がよく解らないが、DB Access部分をWebAPI?に変更しているもよう。 -dbSheetClientのトップページ~ https://www.newcom07.jp/dbsheetclient/ ***ソリューション [#ddf7679c] [[前述の「リンクされたデスクトップ データベースへの変換」>#sd710c3a]]を行うソリューション。 -MicrosoftAccessのバージョンアップなら専門会社システムキューブへ~ http://www.ms-access.jp/adp/?gclid=EAIaIQobChMIu9vRhuzP2gIVGQQqCh1towQaEAAYASAAEgI_CfD_BwE *参考 [#qbca5009] -Access ADP~マイクロソフトアクセス活用法(メルマガ)~ https://www.sk-access.com/mailmaga/vol255.html -Access2010でのODBCDirectの代替案 | 愚者の経験~ https://foolexp.wordpress.com/2012/11/28/p2wpsu-5a/ **Microsoft [#z4495d0f] ***support.office.com [#cb70e592] -[[ADOX を使用して Access で SQL パススルー クエリを作成する方法>https://support.microsoft.com/ja-jp/help/304323/how-to-use-adox-to-create-an-sql-pass-through-query-in-access]] -変更点 --[[Access 2013 で廃止、変更された機能 - Access>https://support.office.com/ja-jp/article/access-2013-%E3%81%A7%E5%BB%83%E6%AD%A2%E3%80%81%E5%A4%89%E6%9B%B4%E3%81%95%E3%82%8C%E3%81%9F%E6%A9%9F%E8%83%BD-bc006fc3-5b48-499e-8c7d-9a2dfef68e2f]] --[[Access 2016 の新機能 - Access>https://support.office.com/ja-jp/article/Access-2016-%E3%81%AE%E6%96%B0%E6%A9%9F%E8%83%BD-76454345-f85d-47af-ace1-98a456cb3496?ui=ja-JP&rs=ja-JP&ad=JP]] ***msdn.microsoft.com [#l40f5bd0] -Office の開発 > Office クライアント > Access~ > Access デスクトップ データベース リファレンス > 概念 > 変換 --Access における変更点~ https://msdn.microsoft.com/ja-jp/library/office/jj618413.aspx --Access のテーブル、フォーム、およびレポートの変換~ https://msdn.microsoft.com/ja-jp/library/office/ff834413.aspx --DAO コードを ADO に変換する~ https://msdn.microsoft.com/ja-jp/library/office/ff193201.aspx -Microsoft Office Developer > Microsoft Office 2000 Developer~ > 製品ドキュメント > Microsoft Office 2000/Visual Basic プログラマーズ ガイド~ > 第 3 部 Office ソリューションのデータ処理 > 第 14 章 Office ソリューションのデータ アクセス コンポーネントを使用する~ --ADO または DAO を選択して Access データベースを使用する~ https://msdn.microsoft.com/ja-jp/library/cc376212.aspx --リンクされたテーブルを作成する~ https://msdn.microsoft.com/ja-jp/library/cc376276.aspx -テクニカルドキュメント > テクニカルドキュメント > コラム~ Microsoft Access のテーブルを使用した作業~ https://msdn.microsoft.com/ja-jp/library/dd313956.aspx **プラプラ式技術系 Access流! [#gae18557] -【Access】Access2013ではadp(AccessProject)が使えない。。。~ http://plus-sys.jugem.jp/?eid=251 -【Access】そろそろADPの代替を考えてみる。その1。~ http://plus-sys.jugem.jp/?eid=434 **ツール [#n2d778c2] ***アップサイジング・ウィザード [#c377fbaa] Accessのスタンドアロン(*.accdb形式)からADP(*.adpファイル)への移行を行うツール。 -前提~ Accessのスタンドアロンのデータベースファイル(*.accdb形式)が作られている前提 -変換~ 対話式でいろいろな設定していくことでADPへの移行が可能。 --必要なオブジェクトをAccessからSQL Server側に転送 --オブジェクトをSQL Server側に転送した後の変換処理 ---変更なし~ テーブルをSQL Server上に移行するが、Access自体には変更を加えない。~ 結果的にSQL Server上にテーブルやその属性が生成されるだけになる。 ---SQL Serverのテーブルを既存のアプリケーションにリンクさせる~ テーブルをSQL Server上に移行したあと、ODBC経由のリンクテーブルとしてAccess上に設定する。~ これにより、従来のローカルテーブルに代わって、SQL Server上のテーブルのデータを扱えるようになる。 ---新しいAccessクライアント/サーバーアプリケーションを作成する~ ADP化して、直接的にSQL Serverデータベースを扱えるようにする。 -参考 --[[アップサイジング ウィザードを使用して Access データを SQL Server データベースに移動する - Access>https://support.office.com/ja-jp/article/%E3%82%A2%E3%83%83%E3%83%97%E3%82%B5%E3%82%A4%E3%82%B8%E3%83%B3%E3%82%B0-%E3%82%A6%E3%82%A3%E3%82%B6%E3%83%BC%E3%83%89%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6-access-%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92-sql-server-%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%81%AB%E7%A7%BB%E5%8B%95%E3%81%99%E3%82%8B-5d74c0df-c8cd-4867-8d07-e6e759d72924]] --■T'sWare Access Study~ ~Vol.18 Accessアップサイジング実例~~ http://tsware.jp/study/ >ADP(Accessプロジェクト)形式への変更 +本シリーズの概要~ http://tsware.jp/study/vol18/upsize_01.htm +アップサイジングウィザードの実行~ http://tsware.jp/study/vol18/upsize_02.htm +ビューとテーブル値関数の統合~ http://tsware.jp/study/vol18/upsize_03.htm +アクションクエリのストアドプロシージャ化~ http://tsware.jp/study/vol18/upsize_04.htm +VBAプログラムのDAOからADOへの変更~ http://tsware.jp/study/vol18/upsize_05.htm +フォーム/レポートの動作テスト(1)~ http://tsware.jp/study/vol18/upsize_06.htm +フォーム/レポートの動作テスト(2)~ http://tsware.jp/study/vol18/upsize_07.htm +複数ユーザー利用を考慮したシステム変更~ http://tsware.jp/study/vol18/upsize_08.htm ---- Tags: [[:移行]]