DXR165の備忘録

自分用の備忘録です。

ADOを使う場合の考慮事項  

ADOを使う場合の考慮事項

1. どのWindows で稼働させるかでADOのバージョンが違ってきます。ADOはVista以降のWindowsに同梱(Windows DACとして実装される)されています。Windws XP SP3ではMDAC 2.8 SP2 になります。 Windows Vista ,7,8のADOはWindows XPで稼働していたADOの機能はカバーされているようです。

2. OLE DB プロバイダーは基本的にはデータソース供給元から提供されます。最初からMDAC(Windows DAC)により提供されるものあります。

3. 64ビットWindows 上の32ビットOfficeなどで使用する場合は、32ビットWindows DACが使われます。64ビットWindowsの場合、32ビットと64ビットと2つのADOがありますので注意が必要です。

category: Access その他

tb: 0   cm: 0

SQL Server OLE DB プロバイダーの提供が廃止?  

調べ物をしていたら、「SQL Server OLE DB プロバイダーの提供が廃止?」なるMSDNの記事を見つけました。これによると、SQL Server 2012より後にリリースされるSQL ServerにはOLE DB プロバイダーは提供されないそうです。これにより、今後、推奨される接続方法はODBCになるそうです。

category: Access その他

tb: 0   cm: 0

Access 2013 ではADPが使えない?  

以前から風の噂では聞いていたのですが、ネットサーフしていたら「Access 2013 ではADPが使えない]
という記事を見かけました。

2013/06/04記事修正
また、SQL Server 2012 がOLE DB プロバイダが提供される最後のバージョンで、今後の接続にはODBCが推奨されるそうです。このようなMicroSoft MSDNの公式記事もありました。

category: Access その他

tb: 0   cm: 0

Access レポート 通常使うプリンター その他のプリンター  

Access レポートの ページ設定/ページ タブで「通常使うプリンター」と「その他のプリンター」が設定できます。 「通常使うプリンター」が規定値です。通常はこのままで問題ないと思われます。

「その他のプリンター」を設定すると以下のようなことが可能になります。
    複数のプリンターがインストールされているときに、レポート毎にプリンター切り替える。
    1つのプリンターしかインストールされていないが、レポート毎に給紙トレーを切り替え、用紙サイズなどを切り替える。

設定を保存する際はプリンタープロパティー画面まで開き、設定し、保存します。プリンタープロパティの細かい設定まで保存してくれるようです。が、どこまでの設定を保存してくれるかはっきりしません。実際にテストプリントして確かめるほかありません。また、いったん保存すると、保存値は新たな保存値を上書きしないと変更されないようです。また、「通常使うプリンター」の設定に戻し、レポートを保存しても、保存値は有効になる場合があるようです。
このように、「その他のプリンター」の設定は便利ですが、あとのメンテナンスが大変そうです。

このへんの情報はヘルプやネットでも情報は少ないです。いずれにせよ、注意しないといけないのは設計時に使用していたプリンターが変更になったときです。いろいろ試行錯誤は覚悟しないといけません。

category: Access レポート

tb: 0   cm: 0

Access 独自のデフォルトプリンター  

Windowsのデフォルトプリンターとは別に、Access独自のデフォルトプリンターが設定されています。データベースを開いた時点では、Accessのデフォルトプリンターは、Windowsのデフォルトプリンターになっています。
Windowsのデフォルトプリンターを変更すると、その後開くデータベースのAccessのデフォルトプリンターも変更され、データベースを開いている間でも即座に変更されます。

? Application.Printer.DeviceNameで確認できます。


レポートがデフォルトプリンターに印刷されるように設定されていないときは、Accessのデフォルトプリンターを切り替えても適用されません。

レポートがプリンターの設定を保存したかどうかを調べるには Debug.Print Reports!レポート名.UseDefaultPrinter (プリンターの設定が変更されておらず、フォームやレポートと共に保存されていない場合は True 、プリンターの設定がフォームやレポートと共に保存されている場合は False )

category: Access VBA

tb: 0   cm: 0

Access レポート レポートのサイズと印刷用紙サイズ  

レポートのサイズ と実際にプリンターからでてくる印刷用紙のサイズの関係
レポートのサイズ の横幅はレポートの幅プロパティの値です。縦は各セクションの高さプロパティの合計 でいけそうですが、そう簡単ではありません。それは、詳細セクションやグループヘッダ、フッタはデータの値によって繰り返し印刷されます。データベースソフトですのでほとんどの場合たくさんのデータを印字するので、印刷する用紙サイズ の縦サイズよりあふれます。そうです、あふれることを前提にレポートの仕様が作られています。ですので、縦のサイズはページ設定の用紙サイズの縦の高さ(同一サイズの用紙でも印刷の向きの設定で縦の高さが変わります。)になります。
レポートの幅プロパティとページ設定の余白の合計がページ設定の用紙サイズの横幅よりも大きくなると印刷がはみでてしまいます。プリンターには機械的な要因で用紙に印字できない部分があります。(フチなしプリンターなどあるようですが。)たとえば左右上下の余白が1mmなどの設定はレーザープリンターなどではできないようです。あるメーカーのレーザープリンターを調べてみると、A4の余白は5mm以下は設定できない仕様でした。どこまで余白を小さく切りつめられるかは、各プリンタードライバーのマニュアルなどで印刷範囲を調べ設定します。プリンターはページ設定で指定された用紙サイズを給紙口から取り出そうとします。給紙口にそのサイズがなければ、プリンター側でエラーが発生し、OSなどに知らせます。

category: Access レポート

tb: 0   cm: 0

Access 手動で作るラベル印刷   

ウィザードを使わずにラベル印刷 の設定


一からレポートをデザインビューで

レポートのレコードソース を指定する。

詳細セクションだけにする。

レポートの幅をラベルの横幅にする。

詳細セクションの高さをラベルの縦幅にする。

必要なフィールドを詳細セクションに追加する。

ページ設定の印刷オプション タブで
余白(左)を最左のラベルの左余白を設定し、右も同一の値にする。
余白(上)を最上のラベルの上余白を設定し、下も同一の値にする。

ページ タブで
用紙サイズを指定する。ラベルシートのサイズはA4が多いようです。

レイアウト タブで
列数 ラベルが横にいくつ並んでいるかを設定。行、列間隔は各ラベルに応じて設定する。
サイズは実数にチェックがついていたらOK。
印刷方向はお好みで。

category: Access レポート

tb: 0   cm: 0

Access 2010 でのDAOは?  

Access 2010 で直接カレントデータベースにアクセスしテーブルのレコードを操作するには、DAO を使います。既定の参照設定はMicrosoft Office 14.0 Access database engine Object Libraryが参照されています。これがDAOです。Access 2003ではDAO 3.6 Object Libraryとわかりやすかったのですが、Access 2007から変わりました。Access 2007からのDAOは従来のと区別するためでしょうかACE DAOとも呼ぶようです。

Office 11 - Access 2003 - Jet 4.0 - DAO 3.6 - DAO 3.6 Object Library

Office 12 - Access 2007 - ACE 12.0 - DAO 12.0 - Microsoft Office 12.0 Access database engine Object Library

Office 14 - Access 2010 - ACE 14.0 - DAO 12.0 - Microsoft Office 14.0 Access database engine Object Library

Office 15 - Access 2013 - ? - ? - ?

category: Access VBA

tb: 0   cm: 0

Office 2010 (14) からVBAがVBA 7.0 に変更  

Office 2010 (14) からVBAがVBA 7.0 に変更になりました。詳細は調査中です。

category: Access VBA

tb: 0   cm: 0

WSH でデータアクセス環境チェック  

MDAC / WDAC はPC毎に環境が違う場合があり、チェックが大変です。Windows XP まではチェックするユーティリティーがありました。ADOバージョン表示のVBSを作ってみました。

注意 64-Bit Windows 7 で実行するときは、
32ビット環境を調べる場合は32ビット版C:\Windows\SysWOW64\wscript.exe
64ビット環境を調べる場合は64ビット版C:\Windows\System32\wscript.exe
を使用してください。


VBS ソースコードです。
Option Explicit

Dim myConn
Dim myADO_VERSION
Dim myWSH_VERSION
Dim myPROMPT
Dim myTITLE
'*******************************************************************
'ADOオブジェクトを作成します
Set myConn = CreateObject("ADODB.Connection")

myADO_VERSION =  "ADO Ver " & myConn.Version

Set myConn = Nothing
'*******************************************************************
myWSH_VERSION = "  : WSH Ver " & WScript.Version
myPROMPT =  myADO_VERSION & myWSH_VERSION
myTITLE =  "ADO VERSION CHECK"
Msgbox  myPROMPT , 0, myTITLE
ソースコード終わりです。


category: Access その他

tb: 0   cm: 0

OLE DB プロバイダ 設定画面呼び出し  

OLE DB プロバイダ 設定画面を呼び出すには、拡張子が.udlのテキストファイルを作り、ダブルクリックする。

category: Access その他

tb: 0   cm: 0

ADO ( ActiveX Data Object )  

ADO はアプリケーションがデータアクセスをするための橋渡しをする役目をしていて、同一手法でOracle、SQL Server、Jet/ACE、Excel、CSVなどのデータにアクセスできるメリットがあります。Access VBA を解説するサイトなどではDAO とセットでよく解説されています。

ADO の実体はつかみにくいですが、OLE DBを直接動かすかわりに、間に入る仲介役といえるでしょう。なぜ、わざわざ仲介役を入れるかというと、プログラミングが楽になるからです。ここで、重要なことは「ADO はOLE DB を動かすものである」ということです。

OLE DB とはODBCにかわるもので、RDBMSはもとより、電子メール、テキストファイルなども同一手法でアクセスできるようにするためのもので、これもデータ(RDBMSなど)とアプリケーションの間に入る仲介役です。OLE DBには各データソース別にOLE DBプロバイダが必要です。

OLE DBプロバイダは各データベース製品の供給元から提供されるようです。現在(2012/10/10)のところ、最新のAccess 2010(Jet/ACE 14.0)に対応するOLE DBプロバイダは提供されています。


現在(2012/10/09)ADOの指向を受け継ぐものとして新しいデータアクセス手法としてADO.NETが登場しています。しかし、ADO.NETは.NET開発環境があるものでしか使えないようで、Access やExcel のVBAからは使えないようです。また、ADO.NETはOLE DBとは関係ないようです。
2012/10/10 記事修正 ADO.NETでJet/ACE データベースやExcel、CSVなどにアクセスする場合はOLE DBを使用しているようです。

Access 2007 または2010 のデータベース用のOLE DBプロバイダはマイクロソフトのサイトからダウンロードできるようです。

主なOLE DBプロバイダー

"Microsoft.JET.OLEDB.4.0" (Jet 4.0用のOLE DB プロバイダ)
"Microsoft.ACE.OLEDB.12.0"(Access 2007以降のaccdbを使うとき)


概念図 Excel 2003 VBA から mdb ( Access 2000形式 ) へ ADO でアクセス

Excel VBA
    |
ADO
    |
OLE DB Interface
    |
"Microsoft.JET.OLEDB.4.0" (Jet 4.0用のOLE DB プロバイダ)
    |
Jet 4.0
    |
mdb ファイル



参考 Excel 2003 VBA から mdb ( Access 2000形式 ) へ DAO でアクセス

Excel VBA
    | 
DAO 3.6
    |
Jet 4.0
    |
mdb ファイル

category: Access その他

tb: 0   cm: 0

MDAC / WDAC  

MDAC / WDAC は ADO、OLE DB、ODBCなどをセットで供給してくれます。ADO を使うときこれがなくては始まりません。最近では、MDAC / WDAC はWindows に同梱されています。Windows Vista 以降はWindows DAC と呼ぶようです。また、64ビットWindows の登場で64ビット版の MDAC / WDAC も開発されています。

Windows XP SP3 --> MDAC 2.8 SP2

Windows Vista  --> WDAC 6.0

Windows 7 32-Bit --> WDAC 6.1 32-Bit

Windows 7 64-Bit --> WDAC 6.1 64-Bit & WDAC 6.1 32-Bit

メモ

WDAC 6.0以降は機能としてはMDAC2.8とほぼ同等だそうです。(2013/06/23)
ADOの実体はmsado15.dllと関連ファイルのようです。
現在(2012/10/12)の最新のものはWDAC 6.1に含まれるmsado15.dll ver 6.1 のようです。

WDAC は単体でダウンロードできないようです。現在(2012/10/12)

MDAC / WDAC のコンポーネントのインストール先は
C:\Program Files \Common Files\System\ado
C:\Program Files \Common Files\System\Ole DB

さらに64-Bit Windows 7 では

C:\Program Files (x86) \Common Files\System\ado
C:\Program Files (x86) \Common Files\System\Ole DB


C:\Program Files \Common Files\System\ado
C:\Program Files \Common Files\System\Ole DB
 
と両方にあります。

両者はファイル名は同じですが、32-Bitで動くと64-Bitで動くの違いがあり、注意が必要ですです。64-ビットアプリケーションからは当然64-Bit MDAC / WDAC が呼び出されます。

category: Access その他

tb: 0   cm: 0

Jet / ACE エンジン  

Access 2003 のデータベースエンジンは Jet でした。Access 2007 以降はACE Engine( Microsoft Access Engine )になりました。ACE はJet とは別建て開発したようです。ACE は、以前のバージョンの JET との完全な下位互換性があるので、(.mdb) ファイルを読み書きできるようです。ACE はAccess の略と思われます。現在のところAccess がリリースされたびにACE もバージョンアップしているようです。 



Access 2003 のデータベースエンジンは Jet 4.0 です。

Jet 4.0 は2009年ぐらいまでバージョンアップされていたようです。いくつかのバージョンが存在します。

Windws XP のMDAC 2.8にはJet 4.0は同梱されていないようです。

Windows Vista/7 ではJet 4.0 はWDAC の一部として以下の関連ファイルで同梱されています。これは、過去資産の互換性のためと思われます。現在(2012/10/12)のところJet 4.0の64ビット版は提供されないようです。

64-Bit Windows 7 では
C:\Windows\SysWOW64
  Jet 4.0 本体( Msjet40.dll )
  Jet 4.0用のOLE DBプロバイダ
          "Microsoft.JET.OLEDB.4.0"(msjetoledb40.dll)

C:\Program Files (x86)\
      Common Files\microsoft shared\DAO
  Jet 4.0用のオブジェクトライブラリー DAO 3.6 (dao360.dll)




ACE になって実装がわりやすくなりました。上位フォルダがバージョン別になっています。Office 14 ( Access 2010 )では64ビット版が提供されています。ACE EngineはWindows には同梱されないようですが、Office 製品には同梱される場合があるようです。また、ACE Engineはマクロソフトのサイトからダウンロードできるようです。

Offece 2007 (12)はACE Engine Ver 12.0
Office 2010 (14)はACE Engine Ver 14.0
のようです。


32-Bit Office xx on 64-Bit Windows 7 では次のように実装されています。

Access 2007 ( Office 12 ) xx=12
Access 2010 ( Office 14 ) xx=14

C:\Program Files (x86)\
     Common Files\microsoft shared\OFFICExx 
  ACE本体 ( ACECORE.DLL )  
  ACE用のオブジェクト ライブラリー DAO xx ( ACEDAO.DLL  ) 
  ACE用のOLE DBプロバイダ
      "Microsoft.ACE.OLEDB.12.0" (ACEOLEDB.DLL) 

  ※DAO xx =  Microsoft Office xx.0 Access 
                         database engine Object Library

C:\Program Files (x86)\
     Microsoft Office\Officexx
  Office アプリケーション本体 ( Word Excel Access など)



ACE エンジンを介してExcel VBAなどからデータにアクセスする方法は3つあります。

1.  DAO
     ACE エンジンの全機能を使うことができます。 

アプリケーション (Excel VBAなど)
     | 
DAO ( Data Access Object )
     |
Jet / ACE Engine
     |
mdb / accdb Files 


2.  OLEDB(ADO)
     データによらず統一した手法でデータにアクセスできます。
     Word の差し込み印刷でExcelデータなどを参照するときに使われている。
     Excel の外部データ取り込みなどで使われている。 

アプリケーション (Excel VBAなど)
     | 
ADO ( ActiveX Data Object ) 
     |  
OLE DB
     |
Jet / ACE Engine
     |
mdb / accdb Files  

3.  ODBC
     Excel VBA などでは直接使わない。他言語の既存資産を保守するときに使います。
     Excel のMS Queryで使われている。




ACE 用のOLE DBプロバイダはOffice 12 ,14ともに共通で"Microsoft.ACE.OLEDB.12.0"ですがExcelにアクセスするときは拡張プロパティの指定を次のようにします。(マイクロソフトのサイト情報)

Excel 2007 にアクセスするとき →  "Excel 12.0"
Excel 2010 にアクセスするとき →  "Excel 14.0"


DAO ProgID
32-Bit Office 2010 (14) on 64-Bit Winows 7では
DAO  3.6 -> "DAO.DBEngine.36"
DAO 14.0 -> "DAO.DBEngine.120"
となっています。
Office 2007 (12)とOffice 2010 (14) とも"DAO.DBEngine.120" のようです。


メモ
Windows 7でOffice 2003がなく.mdb (Access 2000-2003 形式)をExcel 2010 VBAから操作する場合はDAO3.6ではなくMicrosoft Office 12.0 Access database engine Objectを使います。


私的物置場所
VBSでDAO
Option Explicit

Dim dbEng
Dim myDAO_VERSION

'***************************************************
'DAOオブジェクトを作成します
Set dbEng = CreateObject("DAO.DBEngine.120")

myDAO_VERSION = " DAO Ver " & dbEng.Version
Set dbEng = Nothing
'***************************************************

category: Access その他

tb: 0   cm: 0

Access 2003 延長サポート終了日  

Access 2003 の延長サポート終了日は 2014/04/08 です。

category: Access その他

tb: 0   cm: 0

Access 参照設定の変遷  

Access 2003 ( Office 11 )

DAO → Microsoft DAO 3.6 Object Library
C:\Program Files \Common Files\microsoft shared\DAO\DAO360.DLL 

ADO → Microsoft ActiveX Data Objects 2.x Library
C:\Program Files \Common Files\System\ado\Msado2x.tlb


Access 2007 ( Office 12 )

DAO → Microsoft Office 12.0 Access database engine Object Library
C:\Program Files \Common Files\microsoft shared\OFFICE12\ACEDAO.DLL

ADO → 既定では参照設定されない。   


Access 2010 ( Office 14 )

DAO → Microsoft Office 14.0 Access database engine Object Library 
C:\Program Files \Common Files\microsoft shared\OFFICE14\ACEDAO.DLL

ADO → 既定では参照設定されない。


となっています。Access 2007 以降はDB Engine のバージョンとOffice のバージョンと一致しています。また、ライブラリーのインストールフォルダもDAO からOFFICE XX に変わり、ファイル名もACEDAOとなりバージョン表記はなくなりました。上位のOFFICE XX フォルダでバージョン管理するようです。

category: Access その他

tb: 0   cm: 0

Access 四捨五入するには  

四捨五入は小数の端数の処理の仕方の1つで他に切り上げ、切り捨てなどがあります。ところがAccess にはこの四捨五入をする関数がありません。Access のRound 関数は銀行型丸め処理で四捨五入とは違う部分があるそうです。Excel ならワークシート関数ROUNDで簡単に四捨五入できます。Access では標準で四捨五入の処理を用意していないようです。「Access ぐらい使える人は自前関数で処理できるでしょ」という想定なのでしょうか?。しかし、この「たかが四捨五入の処理」ですら、初心者には壁になり、いろいろ調べまくりの試しいので、貴重な時間が蝕まられるのです。なので、「Access って使いにくい」→「普及しない」となるのでしょう。

限定( 正の数で小数点第一位で四捨五入するとき) はありますが簡素な方法は
=Int(変数 + 0.5)
です。

補足
Excel にはワークシート関数とVBA 関数とがあります。当然ワークシート関数はシートのセルの中で使い、一方VBA 関数はプロシージャの中で使います。両者は別物ですが ROUND のように同じ名前のものがあり事態をややこしくしています。

Excel ワークシート関数のROUND は四捨五入できます。
Excel VBA 関数のRound はAccess( VBA)  のRound と同じく銀行型丸めです。

ところが、Excel VBAには便利な工夫があります。ワークシート関数の一部はプロシージャの中でも使えるようになっています。このROUND関数も使えます。使い方は

=Application.WorksheetFunction.Round(変数,桁数)
となります。この場合のROUNDはくどいようですがワークシート関数のROUNDです。


category: Access その他

tb: 0   cm: 0

Access とWindows 64ビット環境  

Windows 7 の64ビット版をインストールしたパソコンが多くなってきました。メモリー4Gの壁制限がないのは魅力ですね。しかし、プリインストールされる Office はほぼ 32ビット版です。Access も普通にインストールすると32ビットになります。当然JET(ACE)、DAO、ADOも32ビットなのでしょうか?この辺、様々な問題が発生しそうな予感がします。

category: Access その他

tb: 0   cm: 0

Access テキスト フィールドに保存されている数値に基づいてレコードを並べ替える際の注意点  

テキスト フィールドに保存されている数値に基づいてレコードを並べ替えると一般的に想定する順序(数値の小さいもの順またはその逆)になりませんので注意が必要です。


テキスト フィールドに1から21までの数値しか格納されていない場合で昇順に並べ替えを実行すると

1
10
11
12
13
14
15
16
17
18
19
2
20
21
3
4
5
6
7
8
9
のようになります。左からまず1文字目がまず評価され、つぎに2文字目がというような仕様と思われます。「まさか、こうなるとは」と思ってしまいますね。商品コードなどで数値しか入らないがテキスト型にしているときなど注意が必要です。

category: Access テーブル

tb: 0   cm: 0

Access フォーム コンボボックス攻略!  

フォームを作成する上で避けて通れないコントロールが、このコンボボックスです。使用頻度はテキストボックスに次いで高いのではないでしょうか?。一見簡単そうですが、各プロパティをいじっくって調整しないといけません。また、注意しないといけない点もあります。一度、ウィザードを使わずに作成してみて下さい。仕組みがよくわかります。以下、私の個人的にしっくりきている使い方を記します。

1. 例えば、売上入力フォームの販売した社員番号を入力する際、アシストするためにコンボボックスのドロップダウンリストから社員番号と社員氏名の組みで表示させ、社員氏名から判別し選択することで社員番号を格納する。このように、マスターテーブルの主キー値を入力する補助としてキー値を特定できる値を表示させることを一般的に前提としているようです。

2. ドロップダウンリストは主キー値は非表示にし、格納値として設定し、キー値を特定できる値を1列表示させます。上記の例では社員番号は非表示で社員氏名を1列表示する。

3. ドロップダウンリストの各列を「表示する」「表示しない」を制御するのは、なんと"ColumnWidths/列幅" プロパティで該当列の幅を0cmにするそうです。なんか原始的な感じですね。

4. 上記のように設定した場合、コンボボックスのテキスト ボックス部分に表示される値は社員氏名であり、社員番号ではありません。しかし、実際にコンボボックスに格納されている値は社員番号です。この点は勘違いしやすい部分ですので注意が必要と思われます。

category: Access フォーム

tb: 0   cm: 0

Access フォーム デザイン時のグリッド  

フォーム・レポートのコントロールを配置する際、グリッドは欠かせません。このグリッドの細かさを決めるのがフォームのプロパティ X軸グリッド数とY軸グリッド数です。プロパティシートから設定します。個々のオブジェクト単位に設定でます。私はオプションの設定にあるのかと思いだいぶ捜索しました。

category: Access フォーム

tb: 0   cm: 0

Access VBA は!(ビックリマークだらけ)?  

Excel VBA を少し勉強された方がAccess VBA を見て最初に戸惑われるのが、コレクション内のオブジェクトを指定するときの Forms![受注]などの!ではないでしょうか。私はかなり違和感を感じました。見た目がなんか美しくないと思いませんか?みなさん!。Excel の場合はほとんど Worksheets("Sheet1")のようにかっこを使います。!とかっこ両方ともAccess ,Excelでは文法的にOKのようです。では、なぜ Access では!が使われることが多いのでしょうか?Access のヘルプによりますとかっこを使った場合、!よりもパフォーマンスがわずかに遅くなると書いてあります。どうやら、!とかっことでは内部的に動きが違い、Access の場合は!を使っておけば間違いなしと思われます。

category: Access VBA

tb: 0   cm: 0

Access フォーム マウスホイール問題?  

連結フォームでマウスホイールを動かすと、レコードも移動してしまう問題があるようです。意図せずしてホイールを触ってしまうと、レコードが移動し、編集中だったものは確定されてしまいます。Access 2003 ではこの問題があるようですが、Access 2007 以降では解消され、既定の設定ではホイールを動かしてもレコードは移動しないようです。

category: Access フォーム

tb: 0   cm: 0

Access フォーム タブコントロール  

フォームで使えるコントロールにタブコントロールがあります。フォームのテキストボックスなどが多く縦長になってしまい、スクロールしないとテキストボックスが見えないなどのとき、これを使います。一見使うのに難しそうですが、意外と簡単です。

1.  既存のコントロールをタブコントロールのページに移動するときはカットアンドペーストで移動させます。キャッチアンドドロップは使えません。

2.  タブコントロールのページ内のタブオーダー(カーソルが行く順番)も忘れずに設定しましょう。このとき、Access 2010 ではタブコントロールの、[Office テーマの使用]プロパティを[はい]にしているとページ内のタブオーダーが効かない場合があります。[いいえ]にすると問題ないようです。参考dxr165.blog.fc2.com/blog-entry-106.html

3.  フォームの"Cycle/Tab キー移動" プロパティを規定値の[すべてのレコード]にしていると最初のページの最終コントロールでEnter キーを押すと次レコードに移ってしまい、次のページを参照・編集できません。[カレントレコード]にすると次レコードに行かず、次ページにアクセスできます。

category: Access フォーム

tb: 0   cm: 0

Office のテーマ  

Office 2007 からOffice のテーマが導入されました。Office 共通でデザインが統一できるそうです。しかし、このとき Access にはOffice テーマは導入されなかったようで、まだ「スタイル」でフォーム・レポートをデザインしていました。
Office 2010 になり Access にもOffice テーマが導入されました。

Access 2010 フォームのデザインでテーマ関連で注意すること

1. Access 2003 以降で導入された「フォーム上のコントロールにWindows のテーマを使用する」の機能とOffice テーマの機能とを分けて設計しないといけません。

2. Office テーマが適用が可能なフォームのコントロールはコマンドボタン、タブコントロールなど一部のコントロールで、[Office テーマの使用]プロパティは[はい]が規定値になっています。

3. タブコントロールに、[Office テーマの使用]を[はい]にした場合に各ページ内のタブオーダーが適応されない場合があるようです。

category: Access その他

tb: 0   cm: 0

Access 日付/時刻型フィールドの表示形式について  

Access のテーブルで日付/時刻型のフィールドを作成した場合、様々なケースで表示形式に注意する必要があります。

1.データシートビュー、フォーム、レポートでの表示はWindows の地域と言語の日付と時刻の形式の短い形式の書式で表示されます。どのパソコンでも同じ表示にしたい場合はフィールドの書式を明示的に指定しておくと、フォーム・レポート上の連結フィールドにもその書式が継承され、その書式で表示されます。

2.クエリのデザインビューで日付/時刻型フィールドに抽出条件を指定する場合はWindows の地域と言語の日付と時刻の形式の短い形式の書式の影響を受けるようです。

3.Access SQLで日付を扱う場合は#m/d/yy#の形式で指定します。日付の表示書式を変更するにはFormat 関数を使用します。

category: Access テーブル

tb: 0   cm: 0

Access フォーム IME 関連 プロパティ  

フォームのテキストボックスなどでは、IME の制御が使いやすさを左右します。以下にそのためのポイントと解説を書きます。


・テーブル定義でテキスト型のフィールドを作成すると規定値でIME 入力モード:オン、一般の設定がされる。

・フォームウィザード、オートフォームなどで作成するとテキストボックスなどの IME 入力モード はコントロールソースのフィールドの IME 入力モード 設定が継承されます。

・フォームデザインでテキストボックスなど新規で貼り付けるとIME 入力モード:コントロールなし、 一般が規定値で設定される。

・できるだけIME の設定はフィールドでしておくとフォームのほうで修正は不要と思われます。

・IME 入力モード プロパティ
[コントロールなし]→フォーカスが移動する前の設定が、そのまま使われます。
[使用不可] →IME 入力モードの設定を変更することはできません。当然、半角英数でしか入力できません。
[オフ]→IME 入力モードをオンにします。

・IME 入力モード プロパティ の[使用不可] と[オフ]の違いは[オフ]はそのテキストボックスにフォーカスが移動するとオフにはなるが、その後手動でオンにすることができます。[使用不可] は」それができません。

・人名や住所などの場合は[オン]で人名/地名に設定し、電話番号などは[使用不可]にするとユーザーはIME を切り替えなくて済みます。

category: Access フォーム

tb: 0   cm: 0

Access アプリケーション 運用時の設定  

完成したデータペースを運用するにあたり、作成時の状態より Access の使い具合を変えなければいけません。Access 操作画面は標準の状態ではデータベース作成者 = 使う人用になっているからです。データベース作成者 ≠使う人用の場合はAccess の操作画面を使いやすく、設計を維持する観点で変更します。想定によっていろいろあると思いますが、参考に私の例をご紹介します。

Access 2010 でのオプション設定 (カレントデータベース)
フォームの表示  必要に応じてメニュー画面 (独自メニューフォーム) を設定
ナビゲーションウィンドウをOFFにする
リボンとツールバーのオプション  すべてのメニューを表示するをOFFにする

メモ
上記のカレントデータベースのオプション設定は現在開いて、設定しているデータベースに適用されます。カレントデータベースのオプションはデータベース単位に設定できます。

category: Access その他

tb: 0   cm: 0

Access 2007 から 2010へ  

Access 2007→2010で追加されたもの

ナビゲーションフォーム(これは使えそうですが これを使っちゃうとAccess 2007では動かない.....?)

アプリケーション パーツ

Backstage ビュー(追加ということでもないですが…)

Web データベースを構築し、SharePoint サイトに発行できる。

Office テーマ

category: Access その他

tb: 0   cm: 0

Access レポート レポートビュー  

Access 2007 からレポートではレポートビューが登場しました。しかも、ダブルクリックで開く既定のビューになっています。Access 2003 では印刷プレビューが既定のビューでした。レポートビューで開いてみると、印刷プレビューと同じようですが、ページの概念がなくページを移動するボタンはありません。右側にスクロールバーがあり、全体を見渡せます。

メモ
レポートビューではFormat イベントは発生せず、Paint イベントが発生しているようです。

category: Access レポート

tb: 0   cm: 0

Access レポート 「レポートの幅がページの幅を超えています」  

レポートウィザードでレポートを作成し、デザインビューにするとレポートセレクタに上記のエラータグが付くことがあります。しかし、実際に印刷プレビューしても「セクションの幅がページ幅よりも広く、…一部のページが…」のエラーが出ることなく、正常に印刷れます。おそらく、レポート幅と余白、用紙サイズの小数部の計算がエラーチェックと印刷プログラムとで違うためではないでしょうか。印刷時エラーがでなければ、このエラーはあまり気にしなくてもよさそうです。

category: Access レポート

tb: 0   cm: 0

Access レポート "FitToPage/ページに合わせる" プロパティとは  

Access 2007 以降に追加されたレポートのプロパティですが、どのように動作するかよくわかりません。また、ネットでも情報は少ないようです。

category: Access レポート

tb: 0   cm: 0

Access テータシートビュー  

テーブルのデータは本来はそれ専用のフォームを作成し、データを入力、検索、変更などできるようにします。しかし、Access ではその方法を使わずとも、どのテーブルでも使えてほぼ同等の機能をする「テータシートビュー」というフォーム(極端な言い方ですが)が用意されています。このおかげで、テーブルを設計したあとにすぐにデータシートビューでデータを入力できます。テーブルやクエリの開くときの規定値のビューはデータシートになっています。

category: Access テーブル

tb: 0   cm: 0

Access レポート グループ化と集計  

レポートでグループ化したとき、よく要望があるのがグループ毎の集計です。たとえば営業担当者ごとの販売した商品の一覧表で売上合計をグループフッターに印字するときなどです。これもウィザードが便利ですが、動作原理を理解しておくと応用が利きます。

ウィザードで集計を設定したレポートを作成するとグループフッターなどに Count() や Sum() などの集計関数を使った非連結テキストボックスが作成されます。集計するフィールドを変更したい場合はこの Sum([フィールド名])を変更します。Access 2007 以降では、別途「グループ化、並べ替え、集計」ウィンドウで集計を詳細に設定できる機能が追加されています。このウィンドウで集計の設定をすると自動的に集計に必要な関数などをコントロールソースにしたテキストボックスがセクションに作成されます。

メモ
レポートの詳細セクションなどで累計値などを表示する場合は連結コントロールのテキストボックスで[集計実行]プロパティを使用します。

category: Access レポート

tb: 0   cm: 0

Access レポート 偶数ページなら改ページする  

グループ毎に改ページしていて、偶数ページで新しいグループが印刷されようとするときに、さらに改ページして印刷する方法

グループヘッダーセクション(A) に以下を処置する。
改ページプロパティを「カレントセクションの」にする。
改ページコントロール(B) を置く、セクションの高さはゼロにしない。

Private Sub Report_Open(Cancel As Integer)
    Me!B.Visible = False
End Sub

Private Sub A_Format(Cancel As Integer, FormatCount As Integer)
If Me.Page Mod 2 = 0 Then
    Me!B.Visible = True
Else
    Me!B.Visible = False
End If

注意事項
グループヘッダーセクションに改ページコントロールを置いたとき、セクションの高さをゼロにすると、改ページコントロールが機能しないようです。

category: Access レポート

tb: 0   cm: 0

Access レポート セクション  

レポートには以下のセクションがあります。これらをうまく組み合わせて帳票を作成します。


レポート ヘッダー→あまり使わない

ページ ヘッダー→Word,Excelのと同じ、すべてのページに印刷される

グループ ヘッダー→グループ化を設定し、「ヘッダーを表示をする」のとき現れる。印刷されるタイミングはグループで設定した値がブレークし詳細セクションが印刷される前。用途はグループ名など表示。デザインビューでは「○○ ヘッダー」で表示される。○○はグループ化したときのフィールド名が表示されている。

詳細→1レコードつき1回印刷される。明細行などを設定する

グループ フッター→グループ化を設定し、「フッターを表示をする」のとき現れる。印刷されるタイミングは1グループの最後の詳細セクションの後。用途はグループの合計など表示。デザインビューでは「○○ フッター」で表示される。○○はグループ化したときのフィールド名が表示されている。

ページ フッター→Word,Excelのと同じ、すべてのページに印刷される

レポート フッター→あまり使わない

category: Access レポート

tb: 0   cm: 0

Access レポート グループ化  

実務で使用される帳票では、ある単位ごとに区切って印刷を制御したいことがあります。たとえば、販売会社などで営業担当者ごとの販売した商品一覧を出力する場合などです。このような帳票を出力するときに、グループ化を使います。

グループ化を使うにはレポートウィザード内で「グループ化するレベルを指定する」の設定画面で指定する方法が簡単です。

また、一度作成したグループ化の設定を変更する場合はつぎのコマンドを使用します。
Access 2003→ツールバーの「並べ替え/グループ化の設定」
Access 2007,2010→「グループ化と並べ替え」 
  

 グループ化の実態は?
上記の「並べ替え/グループ化の設定」 のウィンドウを見ていただければわかるのですが、グループ化のプロパティはレポートのプロパティ シートにはでてきません。ということは、グループ化の実態はレポート オブジェクトとは別にあるようです。開発者用ヘルプでは「グループレベル 」オブジェクトが存在しているのがわかります。

同一ページ印刷 プロパティとは
グループ化の同一ページ印刷 プロパティについて

[しない] →グループが複数ページにわたるときに改ページの位置に関係なく印刷されます。(規定値)
[グループ全体]→グループヘッダー・詳細・グループフッターが同じページに印刷されます。最終行の詳細とグループフッターの「ページまたがり」やグループヘッダーと最初の詳細の「ページまたがり」などをが防げます。
[最初の詳細セクション]→少なくともグループ ヘッダーから最初の詳細セクションまでは同一ページに印刷されます。グループヘッダーと最初の詳細の「ページまたがり」が防げます。 

となっています。グループ化印刷の際に見やすい印字にしたいとき設定するようです。また、レポートウィザードでグループ化した場合は規定値が設定されるようです。 

さらにややこしいことに、各セクション(ページヘッダーとページフッターを除く)のプロパティにも同一ページ印刷 プロパティ(こちらの選択肢は「はい」か「いいえ」)があります。こちらの場合は各セクションが「ページまたがり」をしたくないとき「はい」にします。両者の違いは制御する単位です。グループ化の方はグループ単位、各セクションの方はグループヘッダーなどセクション単位です。そうすると、両者のプロパティが干渉するのではないか?と疑問が湧いてきます。そこで、調べるとつぎのような例外事項がヘルプにありました。

セクションに対する "KeepTogether/同一ページ印刷" プロパティが [No/いいえ] に設定され、グループに対する "KeepTogether/同一ページ印刷" プロパティが [Whole Group/グループ全体] または [With First Detail/最初の詳細セクション] に設定されている場合、セクションに対する "KeepTogether/同一ページ印刷" プロパティは、無視されます。

必ずグループ毎に改ページしたい
グループヘッダ セクションの改ページ プロパティで設定します。詳しくは dxr165.blog.fc2.com/blog-entry-30.html を見てください。"同一ページ印刷" プロパティの[グループ全体]でうまくいきそうですが、詳細行が2、3行と少ないグループが多いときなどはA4の1ページ内に異なるグループが印字されてしまいます。
ですので、このグループ化の"同一ページ印刷" プロパティは必ずグループで改ページしたいときには使えないということです。

セクション繰り返し プロパティって?
これはセクションの中でもグループヘッダーにしかないプロパティです。グループ毎に印刷したとき、ある1つのグループが2ページ以上になると2ページ以降にはグループヘッダーは表示されず見にくい場合があります。このようなときにセクション繰り返しプロパティを[はい]にします。規定値は「いいえ」です。




category: Access レポート

tb: 0   cm: 0

Access レポート ウィザード  

レポート ウィザードを使いこなせるとレポートの生産性が向上します。ウィザードはAccessのバージョンによって設定内容に少し違いがあります。以下、私がよく使うパターンを説明します。

予め印刷に必要な項目はクエリで結合しておく。
グループレベルを設定すると印刷形式は「ステップ」「ブロック」「アウトライン」などの選択になる。
グループレベルを設定しないと印刷形式は「単票形式」「表形式」「帳票形式」の選択になる。
印刷形式「ブロック」を選択するとExcelで印刷したリストに近いレポートができる。Access 2007 以降では幾分手を加えないといけなくなりました。
スタイルは「ゴシック」で十分です。(Access 2003の場合)
ウィザードで設定できることは可能な限りしておく。

category: Access レポート

tb: 0   cm: 0

Access レポート ページ設定  

〈ページ設定〉では選択されたプリンターで使用可能な用紙サイズや向き、給紙方法を指定できます。〈ページ設定〉で設定した値はは各データベースオブジェクトごとに保存されます。このことで、各レポート毎に異なる印刷設定をレポートのデザインの一部として保持することができます。

ページ設定でプリンター固有の機能に左右されやすいのは「用紙サイズ」「給紙方法」です。「印刷の向き」は選択肢が2つしかありませんので、ほとんどのプリンターで対応できているようです。

ページ設定の印刷の向きとは
レポートのデザインで印刷用紙を「縦」または「横」どちら向きでレイアウトするかを指定します。プリンターのトレイに印刷用紙をタテまたはヨコで入れるかの指定ではありません。

「給紙方法」はトレイの2段目にはいつもA3が入っているので、レポートAのときは常にトレイの2段目から給紙してA3で印刷したいときなどにこの設定を使います。この設定はレポートAに保存されるので、このレポートを印刷実行するだけ、手動でトレイを切り替えなくてもA3で印刷できます。

ページ設定 余白の設定
ページ設定の余白の規定値は 「Access のオプション」の設定値が引き継がれます。レポートウィザードを使用した場合は、レポートウィザードが独自に設定した値になる場合があります。

ページ設定 レイアウト タブ
これは段組み印刷をするときに使用します。段組み印刷はは宛名ラベルを印刷するときに必要です。段組み印刷をしないときはこのレイアウト タブを設定する必要はありません。ラベル印刷ウィザードでレポートを作成したあと、微調整するときなど、このレイアウト タブを設定します。
行列設定/行数→実物用紙ページ内の論理的ページを横にいくつ並べるか指定します。
サイズ/幅・高さ→実物用紙ページ内の論理的ページのサイズを指定します。規定では現在のレポートの幅、詳細セクションの高さになっています。ので、手動で列数を2以上にした場合は手動でサイズを計算し値を指定します。サイズ/実寸にチェックを入れると現在のレポートの幅、詳細セクションの高さに等しくなります。
縦にいくつ並ぶかは実物用紙の縦のサイズとサイズ/高さと行列設定/行間隔と余白で決まります。


実物用紙サイズ (mm)

A3→297×420
A4→210×297

B4→257×364
B5→182×257

(Access 2007 以降ではページ設定タブのサイズをクリックすると各用紙のサイズもcm単位で表示され細かい設定のときに便利です。ネットで調べたりしなくて済みそうです。)


category: Access レポート

tb: 0   cm: 0

Access 使用可能/編集ロック プロパティ  

フォームのコントロールに使用可能/編集ロック プロパティがあります。2つ組み合わせで以下の制御ができます。

使用可能:[はい](規定値)・編集ロック:[いいえ](規定値)
フォーカス取得:可 編集:可 コピー:可 表示:通常

使用可能:[はい](規定値)・編集ロック:[はい]
フォーカス取得:可 編集:不可 コピー:可 表示:通常

使用可能:[いいえ]・編集ロック:[はい]
フォーカス取得:不可 編集:不可 コピー:不可 表示:通常

使用可能:[いいえ]・編集ロック:[いいえ](規定値)
フォーカス取得:不可 編集:不可 コピー:不可 表示:グレー

備考
よく使うのは使用可能:[いいえ]・編集ロック:[はい]でしょうか。編集されたくない、カーソルもいかなくてよいなどのときに使います。

category: Access フォーム

tb: 0   cm: 0

Access はなぜ習得が難しいのか?  

私自身の感想ですが、以下の点が考えられます。

1.とりあえず、どんなものかすぐに使い始められない。
2.とっつきにくいカタカナ用語が盛りだくさんで、これの意味をつかむだけで超大変です。例として、クエリだのプロパティだの
3.結局は開発ツールなんじゃない!?個人でこじんまりと使うものではないような。

とりあえず、便利さをすぐ体感するならつぎのことをお試しください。Excelのワークシートのデータをテーブルとしてリンクし、レポートウィザードなど利用すれば、様々な帳票を定型的にも、スポット的にもスピーディーに作成できます。そうです、AccessをExcelデータの印刷ツールとして活用するのです。

category: Access その他

tb: 0   cm: 0

Access リンクテーブル Excel  

Excelのワークシートをリンクテーブルとして扱えます。実務でもよく必要性があるケースです。ただし、以下の点で注意が必要です。

Access 2003 SP2以降また、Access 2007以降では Excel ブックにリンクされているテーブル内のデータの変更、追加、削除を行うことができません。

リンクテーブルを作成した際、各列に適用されるデータ型・サイズは Access によって、自動的に決定され変更できません。 

Access 2010でExcelのワークシートをリンクしたときのデータ型は以下のようになっています。
     数値 → 数値型(倍精度浮動小数点型) 
     文字列 → テキスト型(255)
     日付時刻 → 日付/時刻型


メモ
どのようなデータ型が設定されているかは、リンクテーブルをデザインビューで開くと確認できます。Excelのワークシートをリンクテーブルとして使用するときは、どのようなデータ型が適用されているかをよく調べておく必要があります。

Excel リンクテーブルのデータ型で問題が発生した場合は一時的で局所的な回避策ですがインポートに切り替えてデータ型を指定することで回避できます。Excel のデータをレポートで印刷するといったケースではこの回避策で対応できると思われます。
(2012/10/18 追記)
Access 2003 ではExcel ワークシートをインポートするとき、各フィールドのデータ型はAccess により自動判定されたデータ型が決定され、ユーザーがデータ型の指定をすることはできません。Access 2007 以降ではExcel ワークシートをインポートするときデータ型を各フィールド毎に指定できます。

category: Access テーブル

tb: 0   cm: 0

Access ウィザードは便利だけど  

ウィザードで簡単にフォーム・レポート・サブフォーム・サブレポート・ルックアップフィールド・コマンドボタン・コンボボックスなどが出来ますが、その原理といったものがわかっていないと応用(修正)が利きません。

例えば、フォームはレコードソース プロパティにもとになるテーブルまたはクエリが設定されていないとフィルターや検索・置換などのAccessの標準機能の多くを使えません。このことを解説している初心者用の解説本は少ないようです。

category: Access その他

tb: 0   cm: 0

Access VBA エラー処理  

Option Compare Database
Option Explicit

Private Sub エラー処理例()

On Error GoTo Err_LABEL

'~処理~

Exit_LABEL:

'共通の処理(リソースの解放など)の実装

Exit Sub   'エラー処理ルーチンが実行されないようにSubを終了



Err_LABEL:

MsgBox (Err.Number & "," & Err.Description) 'エラー番号 , 定義されているエラーの内容

'エラー処理の実装

Resume Exit_LABEL         'Exit_LABELへ移動する

End Sub

category: Access VBA

tb: 0   cm: 0

Access サブフォームの仕組み  

メインフォームに「サブフォーム/サブレポート」コントロール を埋め込む。
メインフォームのレコードソースにはサブフォームと結合するテーブルまたはクエリを設定。
サブフォームとしてメインフォームの「サブフォーム/サブレポート」コントロール に設定するフォームは1つのフォームとして作成する。
サブフォーム用に作成したフォームのレコードソースにはメインフォームのレコードソースと結合するテーブルまたはクエリを設定。
メインフォームの「サブフォーム/サブレポート」コントロール に以下のプロパティを設定。
  ソースオブジェクトに上記で作成したサブフォーム用のフォーム名を設定。
  リンク親フィールドとリンク子フィールドに結合するフィールドを設定。

category: Access フォーム

tb: 0   cm: 0

Access 独自メニューフォームの作成  

フォームで独自メニューを作成するときの各ウィンドウの設定です。下記の設定以外は規定値のままです。プロパティ シートで設定します。あくまでも筆者の一般的な設定値です。

メインメニュー フォームのプロパティ
書式タブ/
自動中央寄せ: はい (いつも定位置で表示できる)
境界線スタイル:  細線 (サイズを変えれなくなる)
レコードセレクタ:  いいえ (不要パーツは消す)
移動ボタン:  いいえ (不要パーツは消す)
スクロールバー:  なし(不要パーツは消す)
コントロールボックス: いいえ (フォームを閉じる・最大化/最小化できなくなる)
解説:ショートカットメニューでフォームを閉じることが出来ますが、閉じるコマンドボタンなどを実装する必要があります。

メインメニューから呼び出されるフォームのプロパティ
書式タブ/
自動中央寄せ: はい
その他タブ/
作業ウィンドウ固定: はい (他のフォームには移れない。メニューバーとツールバーは機能します)
解説:メインメニューは操作できなくなり、自分自身を閉じなければメインメニューには戻れなくなります。ウィンドウが並列で処理されなくなり、設計が楽です。

category: Access フォーム

tb: 0   cm: 0

Access フォーム コントロールボックス プロパティ  

コントロールメニューを制御します。プロパティの名前はコントロールボックスですので紛らわしいですね。規定値は[はい]です。[はい]を設定するとウィンドウのタイトルバー左端のアイコンや右端のボタンの操作が可能となります。
[いいえ]を設定すると最小化/最大化ボタン プロパティや閉じるボタン プロパティの影響を受けず、ウィンドウのタイトルバーにはフォームの表題のみが表示されます。

category: Access フォーム

tb: 0   cm: 0

Access フォーム 境界線スタイル プロパティ   

境界線の形状だけが変更されるプロパティではありません。また、フォームの詳細な外見はWindowsのバージョンやテーマによって異なる場合があります。規定値は[サイズ調整可]です。

 名称   境界線   サイズ   コントロール 最小化/最大化 閉じるボタン
                   メニュー   ボタン
 なし     なし   変更不可    ×      ×      ×
 細線     細線   変更不可    ○      ○      ○
 サイズ調整可 既定   変更可     ○      ○      ○
 ダイアログ  細線   変更不可    ○      ×      ○


注意事項
[なし]または[ダイアログ]を設定すると、以下のプロパティの設定には影響を受けません。
[なし]:最小化/最大化ボタン コントロールボックス 閉じるボタン
[ダイアログ]:最小化/最大化ボタン

備考
[細線]と[ダイアログ]の大きな違いは最小化/最大化ボタンが[ダイアログ]には表示されないことです。

category: Access フォーム

tb: 0   cm: 0

Access フォームの表示サイズ・位置  

Access 2003の場合

フォームを新規作成すると以下のフォーム プロパティの規定値が設定されることにより、フォームは以下の表示サイズ・位置になります。(フォーム ウィザードやオートフォームで作成すると以下の規定値以外が設定されることがあります。)

"AutoResize/サイズ自動修正" プロパティが [Yes/はい](規定値)
→フォームのサイズが自動的に変更され、レコード全体が表示されます。

"AutoCenter/自動中央寄せ" プロパティに [No/いいえ](規定値)
→フォームビューまたはデザインビューで開かれ、最後に上書き保存されたときの表示位置が記憶され、次回の表示の時にその位置で表示される。


フォームを好みのサイズにするには、"AutoResize/サイズ自動修正" プロパティを [No/いいえ] に設定します。フォームをフォームビューまたはデザインビューで開きます。 ウィンドウの境界線をドラッグし、フォームのサイズを変更します。 上書き保存 をクリックします。すると、次回に開いたときにこのときのサイズ・位置で表示されます。 


アプリケーション ウィンドウの中心にフォームを表示させるには、"AutoCenter/自動中央寄せ" プロパティに [Yes/はい] を設定します。

category: Access フォーム

tb: 0   cm: 0

Access レコードの保存   

データシートビューやフォームビューなどでレコードを変更したときに、変更内容を保存するショートカットキーはShift + Enter です。

category: Access フォーム

tb: 0   cm: 0

プロフィール

最新コメント

カウンター(2012/3/10以降)