「ACCESS VBA」の編集履歴(バックアップ)一覧に戻る

ACCESS VBA - (2007/06/06 (水) 23:56:52) のソース

-Access2000でリンクテーブルが遅いBUGの回避方法
http://support.microsoft.com/kb/261000/ja
解決方法
バックエンド データベース内の各テーブルの "サブデータシート名" プロパティを [なし] に設定します。この設定の変更は、手動で行うか、コードを使用して行うことができます。 

サブデータシート名を手動で設定する 
1.	バックエンド データベースのテーブルをデザイン ビューで開きます。 
2.	[表示] メニューの [プロパティ] をクリックします。 
3.	"サブデータシート名" プロパティを [なし] に設定します。 
4.	テーブルを保存して、閉じます。


-Null値を回避する関数
 Nz(値 [,null時の値] )


-ビューが「フォームビュー」「帳票」の時に並び替えするためのVBA
Me.Form.OrderBy = "フィールド名"
Me.Form.OrderByOn = True

-↑↓キーでデータリストを上下できる表示方法
フォームとサブフォームを使う。
サブフォームは、クエリ/テーブルと連結し、規定のビューを「データシート」 ビューの設定を「データシート」にする。
なお、フォーム自体の設計は別途可能で、ビューを「フォームビュー」に変更するとそちらのフォームが表示される。
並び替えは・・・AccessRuntimeではできない。

-FORMを、データシートビューで表示し、SQLを切り替える
フォームは、「ビューの設定(Defaultview)」を「データシートビュー(2)」にすると、カーソルキーで上下左右に動かせるシンプルなワークシート形式の表示にすることができる。
このとき表示されるフィールドは、デザインビューに入れられたフィールド。ビューをフォームに変更すると、フォームの形で同じデータが表示される。
各フィールドの設定はそのままデータシートビューに引き継がれる。(コンボボックス、イベント処理など)
このとき表示されるデータは、
RecordSource = SQL文 || クエリ名

フォームからサブフォームのデータリストを変更するときには、
Me!サブフォーム名.FORM.RecordSource = SQL文

フォームから自分のデータリストを変更するときには、
Me.FORM.RecordSource = SQL文