Accessで使えるWindows
API サンプル集18 (UPD
99/12/25)
VBでも使用できます。
'マウスカーソルの移動範囲を制限する
'フォームの位置と大きさをレジストリーに格納
ClipCursor
GetParent
GetWindowRect
MoveWindow (AccessのMoveSizeよりきれい)
Excel振込(V1.10)バージョンアップ(UPD
1999/12/21,22)
ABConvから改名しました
Accessで使えるWindows
API サンプル集17 (UPD
99/12/18)
VBでも使用できます。
'実行中のApplicationのタイトル・ClassName・Windowハンドルの一覧
GetClassName
GetDesktopWindow
GetWindow
GetWindowLong
GetWindowText
Accessで使えるWindows
API サンプル集16 (UPD
99/12/11)
VBでも使用できます。
'EXE・DLLファイル内のアイコンハンドルを取得しフォームに表示(できない)
ExtractIcon
DrawIcon
GetDC
ReleaseDC
UpdateWindow
SetBkMode
'マウスのボタンの左右の機能反転
SwapMouseButton
'Windows標準のバージョン情報ダイアログ表示
ShellAbout
'他のアプリケーションも含め最前面のウィンドウハンドルを取得
GetForegroundWindow
ABConv(V1.08)バージョンアップ(UPD
1999/12/06)
Access97便利ツール
AcSearch UPD 1999/12/04
AccessのProperty内の文字列を検索します。ソースコードつきです。(1999/11/27)
少しでも検索時間を短縮するための工夫をしました。(1999/12/04)
ac97property.lzh
UPD 1999/11/20
Access97のオブジェクトとPropertyの相関をMDBにしました。
LsAcPropertyフォームでは初心者向きの処理を行なっています。
1)コマンドボタンのダブルクリックで、同一処理が2回行なわれるのを防ぎます。
2)コマンドボタンに見せかけたラベルの上下の色を入れ替え、凹凸の動作をさせています。
3)コマンドボタンのクリックで長い処理を途中でCancelします。
ウィルス情報 VBS.BubbleBoy(バブルボーイ) 1999/11/13
先日新聞でも大々的に取り上げられたウイルスですが、現時点では日本語環境では感染しないようです(英語とスペイン語環境でのみ動作)。ただメールを開くだけで感染する初めてのウイルスだけに、今後これをもとにした変種や新種ウィルスが現れる可能性が十分に考えられるため注意が必要です。
関連サイト
Accessで使えるWindows
API サンプル集15 (UPD
99/11/13)
VBAでも使用できます。VBには関数があります。
'クリップボードから情報を取り出す
'クリップボードへ情報を送信
OpenClipboard
GetClipboardData
GlobalLock
lstrcpy
GlobalUnlock
CloseClipboard
GlobalAlloc
EmptyClipboard
SetClipboardData
(UPD 1999/11/06)
Access97/2000、VBの2001年問題
Access97/2000のVBAまたはVBで、日付を含むSQLを書いた場合に不具合が生じます。
サンプルではAPIを使って次のことを行なっています。
・OLEAUT32.DLLのバージョンの表示
・コントロールパネル「地域−日付」の短い日付形式の表示
ABConv(V1.07)バージョンアップ(UPD
1999/11/02)
Accessで使えるWindows
API サンプル集14 (UPD
99/10/30)
VB・VBAでも使用できます。
'DirectXを使わずに、画面の解像度と最大表示色数を変更します。設定によってはWindowsを再起動しないと反映されない場合もあります。Windows再起動のAPIも組みこんであります。
EnumDisplaySettings
ChangeDisplaySettings
ChangeDisplaySettingsByRegistry
ExitWindowsEx
空耳工房さんのソースを参考にしました。
Accessで使えるWindows
API サンプル集13 (UPD
99/10/23)
VB・VBAでも使用できます。
'スタートメニューフォルダ内のショートカットファイルの情報と、レジストリーのUninstallサブキーの内容を書き出す実用的(?)プログラムです。
*フォルダ内の階層が未定なので小技を使って解決しています。
GetFileVersionInfo
GetFileVersionInfoSize
VerQueryValue
MoveMemory
SHGetSpecialFolderLocation
SHGetPathFromIDList
CoTaskMemFree
RegCloseKey
RegEnumKeyEx
RegOpenKeyEx
RegQueryValueEx
ABConv(V1.06)バージョンアップ(UPD
1999/10/23)
Accessで使えるWindows
API サンプル集12 (UPD
99/10/16)
VB・VBAでも使用できます。
アプリケーションの重複起動を回避
FindWindow
起動したアプリケーションが終了するまで待機
OpenProcess,GetExitCodeProcess,CloseHandle
待機時間を指定してアプリケーションが終了するまで待機
CreateProcess,WaitForSingleObject,CloseHandle
待機時間を指定しないでアプリケーションが終了するまで待機
CreateProcess,WaitForSingleObject,CloseHandle
ウィンドウの表示位置とサイズを指定してアプリケーションを起動
CreateProcess
(UPD 1999/10/13)
Access97/2000の共存(Windows95の場合)
Access2000終了時に「不正な処理を・・・・」で異常終了する場合があります。
資材管理システムAccess2000版(UPD
1999/10/07)
ABConv(V1.04)バージョンアップ(UPD 1999/10/05)
Accessの小技
LsGetLnkFileInfo.mdb UPD 1999/10/02
Windows Scripting Host(wshom.ocx)を使ってショートカットファイルの情報を取得します。APIでは大変な作業がいとも簡単にできてしまいます。VB、VBAでも使えるようテキストファイルを準備しました。
Accessで使えるWindows
API サンプル集1の追加 (UPD
99/09/25)
VB・VBAでも使用できます。
WAVサウンドを鳴らす。(PlaySound)
さまざまな指定が可能でsndPlaySoundより便利
sndPlaySoundでサウンドを中止する方法
WAVEを再生できるサウンドカードのチェック(waveOutGetNumDevs)
Accessで使えるWindows
API サンプル集11 (UPD
99/10/04)
VB・VBAでも使用できます。
ファイルシステムとボリューム情報を取得する
GetVolumeInformation
ボリュームラベルを設定する(1999/09/21
Windows95個有のコメント追加)
SetVolumeLabel
Access97便利ツール
MdbCmpt(Ver 2.03) UPD 1999/09/11
パスワード保護されたMDBの最適化に対応しました。
Access97/2000ハイブリッド版です。
Accessで使えるWindows
API サンプル集10 (UPD
99/09/11)
VB・VBAでも使用できます。
指定されたファイルのpathを検索する
SearchPath
既存のファイルをコピーする(FileCopyの拡張版)
CopyFile
指定ディレクトリのあるディスクの空き容量を取得(2Gを超えるディスクに対応)
GetDiskFreeSpaceEx
Accessで使えるWindows
API サンプル集9 (UPD
99/09/04)
VB・VBAでも使用できます。
「Windowsの終了」ダイアログボックスを表示
Windowsをログオフする
Windowsをシャットダウンする
Windowsを再起動する
クラス名またはキャプションタイトルを与えてウィンドウハンドルを取得
FindWindow
メッセージキューにメッセージをポストする関数
PostMessage
Windowsをログオフ/シャットダウン/再起動する
ExitWindowsEx
Windowsをシャットダウンする
ExitWindows
UPD 1999/08/28
Access97/2000の共存
Access97の小技
menu_bar.mdb UPD 1999/08/28
Accessのメニューバー、ステータスバーの表示・非表示を切り替えます。Access2000で名前の扱いが変更になりましたので注意が必要です。
Accessで使えるWindows
API サンプル集8 (UPD
99/08/21)
VB・VBAでも使用できます。ウィンドウハンドルを使用するのでVBAでは制限されます。
フォント選択ダイアログボックス表示
ChooseFont
コモンダイアログボックスからのエラーメッセージ取得
CommDlgExtendedError
デバイスコンテキストのハンドル取得
GetDC
デバイス情報取得
GetDeviceCaps
メモリブロックを確保
GlobalAlloc
メモリブロックを開放
GlobalFree
メモリブロックをロック
GlobalLock
メモリブロックのロックを解除
GlobalUnlock
メモリブロックをコピー
CopyMemory
参考文献:河北潤二著「Windows98
APIリファレンス for VisualBasic Programmers」(秀和システム)
(同書添付のCD-ROM にはChooseFont.frmが収録されていないため近日中に同社HPにアップされます。1999/08/24)
IE4のActive
DeskTop +
FrontPage3でWindows95が終われない
(UPD:1999/08/07)
Accessで使えるWindows
API サンプル集7 (UPD
99/08/07)
VB・VBAでも使用できます。ウィンドウハンドルを使用するのでVBAでは制限されます。
ファイル拡張子から起動プログラムを見つける
FindExecutable
WindowsDirectoryを開く
ExplorerでWindowsDirectoryを開く
WindowsDirectory内の最初のテキストファイルを開く
WindowsDirectory内の最初のテキストファイルを印刷
ShellExecute
「起動プログラム」のプロパティダイアローグを開く
ShellExecuteEx
Accessで使えるWindows
API サンプル集6 (UPD
99/07/31)
VB・VBAでも使用できます。ウィンドウハンドルを使用するのでVBAでは制限されます。
フォアグランドウィンドウのハンドル取得
GetForegroundWindow
ウィンドウのキャプションバーをハイライト表示
FlashWindow
FlashWindowEx(Windows98)
OSのバージョンを取得
GetVersionEx
指定のウィンドウがアイコン化されているか
IsIconic
指定のウィンドウが可視状態か
IsWindowVisible
指定のウィンドウが最大化されているか
IsZoomed
Access97の小技
LsIsLoaded.mdb UPD 1999/07/24
Northwind.mdbのユーティリティ関数IsLoadedの拡張版です。
UPD
1999/07/21
Accessの常識 「Setを使ったら、Nothing」
Accessで使えるWindows
API サンプル集5 (UPD
99/07/10)
VB・VBAでも使用できます。
「デスクトップ」「最近使ったファイル」などOSが管理するフォルダのIDを取得する。
(SHGetSpecialFolderLocation,SHGetPathFromIDList,CoTaskMemFree )
Access97の小技
LsConnect.mdb UPD 1999/06/26
Open時にリンク状態を確認し、正常に接続します。
Access97の小技
Sort.mdb UPD 1999/06/19
帳票型のフォームで、
項目ラベルをクリックして昇順/降順に並び替えを簡単に行ないます。
Access97の小技
TabCtrl.mdb UPD 1999/06/12
帳票型のフォームで、
方向キーによるTab制御を行ないます。コンボボックスの方向キーにも対応しています。
Accessで使えるWindows
API サンプル集4 (UPD
99/06/05)
VB・VBAでも使用できます。
Access本体のウィンドウのコントロールメニューを有効/無効にする。
(FindWindow,GetWindowLong,SetWindowLong,DrawMenuBar)
Access本体のウィンドウのコントロールメニュー[×]ボタンを有効/無効にする。
(FindWindow,DeleteMenu,GetSystemMenu,DrawMenuBar)
アニメーション風にフォームを左上隅よりロードし、左上隅にアンロードする。
(GetWindowRect,DrawAnimatedRects)
み〜くんパパの仕事部屋
(http://www.mitene.or.jp/~sugisita/family/papa/vb/)さんのソースを参考にしました。
Accessで使えるWindows
API サンプル集3のBugFix (UPD
99/06/05)
VB・VBAでも使用できます。
「ファイルを開く」コモンダイアログを呼び出す。(GetOpenFileName)
ファイルを複数選択した場合(FileTitleに""が返る)、ファイル名のみを /
で区切って返す(パス名だけが返っていた)
Access97便利ツール
MdbCmpt(Ver 2.02) UPD 1999/05/31
バックアップツールとしてバージョンアップしました。今まで同様コマンドライン指定も可能です。
地獄で仏!Accessのバージョンダウンによく効きます(UPD 1999/05/20)
Access97のオブジェクトをAccess95に変換するアドインツール
UPD 1999/05/15
最適化を行なってもAccessのサイズが大きいと感じたら
Access97便利ツール
LsDirXls UPD 1999/05/07
「エクスプローラ」にはフォルダ内のファイル名を印刷する機能がありません。LsDirXlsはフォルダ内のファイル名をExcelに書出すツールです。
UPD
1999/05/01
クロス集計クエリーで、「行見出し」の値が45文字を超えると値が表示されない場合がある
サブレポートのOpenイベントでOrderByプロパティーを設定するとエラーになる
Access95からAccess97に変換時に「オートメーション
エラーです。」のメッセージが出る
Access97便利ツール LsGauge
UPD 1999/04/26
フォーム上に表示できる進行状況ゲージ。

1.パーセント表示は白抜きになります。
2.プログラムソース付き。
LsGaugeのダウンロード (gauge.lzh 54Kb
1999/04/26)
別途Access97本体が必要です
Accessで使えるWindows
API サンプル集3 (UPD
99/04/19)
VB・VBAでも使用できます。
空耳工房
(http://www.grn.mmtr.or.jp/~soramimi/)さんのソースを参考にしました。
フルパス名からファイル名を取得する。(GetFileTitle)
「ファイルを開く」コモンダイアログを呼び出す。(GetOpenFileName)
UPD 1999/06/05
「名前を付けてファイルに保存」コモンダイアログを呼び出す。(GetSaveFileName)
「色指定」コモンダイアログを呼び出す。(ChooseColor)
Accessで使えるWindows
API サンプル集2 (UPD
99/04/03)
VB・VBAでも使用できます。
空耳工房
(http://www.grn.mmtr.or.jp/~soramimi/)さんのソースを参考にしました。
使用可能ドライブを取得する。(GetLogicalDrives)
使用可能メモリ情報を取得する。(GlobalMemoryStatus)
システムカラーを取得する。(GetSysColor)
フォーマットダイアログを呼び出す。(SHFormatDrive)
ファイル操作。(SHFileOperation)
Access97便利ツール
MdbCmpt UPD 1999/03/27
(フリーウェア版です。1999/03/27以前にダウンロードされた方は再度ダウンロード願います)
Access97便利ツール
LsHolChk UPD 1999/03/17(3/20日版)
成人の日・体育の日(曜日指定祭日)対応「休日チェック」関数(リンクが違っていましたので直しました
03/18)
Accessで使えるWindows
API サンプル集1 (UPD
99/03/12)
VB・VBAでも使用できます。コンピュータ名取得とユーザ名取得のBugFix版。
「ファイルを開く」ダイアログ表示(GetOpenFileName)
UPD 1999/03/02
t_mizu@mail.goo.ne.jpさんからの投稿(1999/03/01)
単純な指定しかできませんがOCXより軽いです。またOCXを使えない場合に便利。
フォルダリスト表示(SHBrowseForFolder
SHGetPathFromIDList) UPD 1999/03/02
t_mizu@mail.goo.ne.jpさんからの投稿(1999/03/01)
ネットワークドライブからリモートドライブパスを取得(WNetGetConnection)
UPD 1999/03/02
MsgBoxでサウンドを鳴らす。(MessageBeep)
WAVサウンドを鳴らす。(sndPlaySound)
Windowsフォルダ名を取得する。(GetWindowsDirectory)
Windows Temp
Pathを取得する。(GetWindowsDirectory)
ドライブのタイプを取得する。(GetDriveType)
解像度を取得(GetDesktopWindow
GetWindowRect)
コンピュータ名取得(GetComputerName)
ユーザ名取得(GetUserName)
DiskSpaceとFreeSpaceを取得(GetDiskFreeSpace)
アクションコマンドとRunCommand定数の対応表
マクロのVBA記述(ダウンロードファイルに入っています)
Access97ヘルプに記述されたRunCommand
メソッドの定数(ダウンロードファイルに入っています)
以上3つが入ったRunCommand関係MDBのDownload
(ac97_runcmd.lzh UPD 1999/02/27)