大村あつしのExcel VBA Win64/32 APIプログラミング (単行本)

大村あつしのExcel VBA Win64/32 APIプログラミング
フォーマット:
単行本 電子書籍
著者 大村あつし
ジャンル IT系書籍 > アプリケーション
書店発売日 2016/08/26
ISBN 9784798047348
判型・ページ数 B5変・392ページ
定価 4400円
(本体4000円+税10%)
在庫 品切れ・重版未定
その他 ダウンロード:有

この本に関するお問い合わせ・感想

あなたはExcel VBAプログラミングに限界を感じたことはありませんか? たとえば「ファイルをゴミ箱に移動する」プログラムを書こうとしてもVBAでは不可能です。しかし、Win API関数さえ利用できれば不可能が可能になります! 本書は、Excel VBAの限界を超えたプログラミングを実現するVBAとWin APIの連携プログラミングガイドです。Excel 97以降の全バージョンに対応しており、Win64/32 APIを使うコツを基礎から徹底解説します!

【サポートはこちら】https://www.shuwasystem.co.jp/support/7980html/4734.html
第1章 Win APIの予備知識
1-1 Win APIとは何か
◆Win APIはWindowsが提供する関数群
1-2 Win APIを使ってできること
◆Win APIを使うとWindowsの標準機能が活用できる
1-3 Windowsの変遷とAPIの進化
◆APIには「Win16 API」「Win32 API」「Win64 API」がある
◆Windows XPの登場とWin16 APIの終焉
1-4 コードの再利用
◆ライブラリの誕生
1-5 ライブラリの活用
◆DLLはAPI関数の収納場所
1-6 Windowsが提供する主なDLL
◆Windows\System32ディレクトリを覗いてみる
1-7 膨張するWin API
◆Win APIにはいくつの関数があるのか

第2章 Windows内部世界の探索
2-1 OSの役割
◆OSはアプリケーションとハードの仲介役
2-2 マルチタスクとプリエンプティブ
◆Windowsは複数のプログラムを次々に実行できるOS
2-3 プロセスとスレッド
◆プログラムはさらにスレッドという単位に細分化される
2-4 CPUを他のプログラムに横取りされないためには
◆待機関数と同期オブジェクト
2-5 ウィンドウ ?Windowsが提供する3つの機能(1)
◆ウィンドウは画面上の矩形の領域
◆ウィンドウの属性
2-6 メッセージ ?Windowsが提供する3つの機能(2)
◆メッセージの橋渡しこそがWindowsの使命
2-7 デバイスコンテキスト ?Windowsが提供する3つの機能?
◆グラフィックスの出力情報を一元化する
2-8 総論
◆Windowsの本質はメッセージとAPI

第3章 VBAからWin APIを使うためには
3-1 Win APIを使う際の心構え
◆VBAに精通してAPIに振り回されない判断力を身に付ける
3-2 Win API関数の宣言
◆API関数はDeclareステートメントで宣言する
3-3 Win APIのデータ型とVBAのデータ型
◆C言語のデータ型とVBAのデータ型の対応表
3-4 Win API関数の呼び出し
◆API関数はFunctionプロシージャとして呼び出す
3-5 文字列を使用するWin API
◆VBAはUnicodeをANSIに変換してAPIに渡す
◆文字列引数を書き換えるAPI関数
◆APIから受け取った文字列を取り出す
◆API関数に文字列引数を渡すときにはByValを使う
3-6 数値を使用するWin API
◆API関数が数値を書き換えるかどうかで渡し方を判断する
◆符号なし長整数と符号付き長整数
3-7 ユーザー定義型
◆ユーザー定義型の宣言
◆ユーザー定義型は参照渡しでWin APIに渡す
3-8 Win APIを使うためのその他のポイント
◆ポイント1 数値配列
◆ポイント2 NULLポインタ
◆ポイント3 As Any節
◆ポイント4 Win APIの「TRUE」とVBAの「True」
◆ポイント5 ビット演算
◆ポイント6 シフト演算
◆ポイント7 Win APIのエラー処理

第4章 プログラムの実行
4-1 本書付属のモジュールを参照する際の注意点
◆Win API関数、構造体、定数の宣言
◆エラー処理
◆Win64 APIとWin32 APIのコードについて
4-2 アプリケーションの重複起動の回避
◆メモ帳が起動していなかったらメモ帳を起動する
4-3 アプリケーション終了までプログラム実行を待機
◆メモ帳が終了するまでプログラムの実行を停止する
4-4 メッセージキューを使わないメッセージの送信
◆単一のメモ帳を閉じる
◆すべてのメモ帳を閉じる
4-5 ウィンドウのキャプション/クラスの取得
◆表示ウィンドウのキャプション、クラスを表示する
4-6 ウィンドウの前面表示
◆背後に隠れたメモ帳を最前面に表示する
4-7 拡張子に関連付けられたプログラムの実行
◆拡張子に関連付けられたプログラムでファイルを開く
◆拡張子に関連付けられたプログラムでファイルを印刷する
◆フォルダを指定してエクスプローラーを起動する
4-8 [ファイルのプロパティ]ダイアログボックスの操作
◆[ファイルのプロパティ]ダイアログボックスを開く

第5章 ファイルの操作
5-1 フォルダ選択用ディレクトリツリーの表示
◆[フォルダの参照]ダイアログボックスでフォルダを指定する
5-2 フォルダ単位のファイル操作
◆フォルダ単位でファイルをコピーする
◆同名のファイルが存在したら別名でコピーする
◆ファイルをごみ箱に移動する
◆ファイルを移動する/ファイル名を変更する
5-3 テンポラリファイルの作成
◆テンポラリディレクトリにテンポラリファイルを作成する
5-4 指定されたファイルの検索
◆複数のフォルダに対して次々にファイルを検索する
5-5 拡張子に関連付けられたプログラム名の取得
◆拡張子に関連付けられたプログラム名を取得する

第6章 情報の取得
6-1 特別なディレクトリのパス名の取得
◆Windowsディレクトリのパス名を取得する
◆Windowsシステムディレクトリのパス名を取得する
◆テンポラリファイル用のディレクトリのパス名を取得する
6-2 特殊フォルダのパス名の取得
◆特殊フォルダとは
◆インターネットキャッシュディレクトリのパス名を取得する
6-3 ドライブの種類の判別
◆ドライブを扱うプログラムにおける前判定処理
6-4 ディスクの空き容量の取得
◆対象ボリュームが2GBを超える場合
6-5 ボリューム名の取得
◆ボリューム名を取得する

第7章 システム情報の取得
7-1 Windowsのバージョン情報の取得
◆Windowsのバージョン情報を取得する
◆ビット演算
7-2 コンピューター名の取得
◆コンピューター名を取得する
7-3 ユーザー名の取得
◆現在のスレッドのユーザー名を取得する
7-4 CPUの数/種類の取得
◆CPUの数と種類を取得する
7-5 画面の解像度の取得
◆画面の解像度を取得する
◆GetSystemMetrics関数で取得できる情報

第8章 ウィンドウの操作
8-1 コントロールメニューの無効化/有効化
◆ユーザーフォームから[閉じる]ボタンを削除する
◆ユーザーフォームに最大化・最小化ボタンを付加し、サイズ変更も可能にする
8-2 Excelの[閉じる]ボタンの無効化/有効化
◆Excelの[閉じる]ボタンを無効にする
◆Excelの[閉じる]ボタンを有効にする

第9章 レジストリ・INIファイルの操作
9-1 レジストリの操作
◆レジストリのデータは、レジストリエディタで確認する
◆Win APIのレジストリ関数
◆レジストリキーを作成する
◆レジストリキーを削除する
9-2 レジストリキーの値の操作
◆レジストリキーに値を保存する
◆レジストリキーの値を取得する
◆レジストリキーの値を削除する
9-3 INIファイルの操作
◆INIファイルの必要性
◆INIファイルの内容
◆Win APIのINIファイル関数
◆INIファイルの文字列を整数として取得する
◆INIファイルのセクション内のすべてのキーと値を取得する
◆INIファイルの文字列を取得する
◆INIファイルのセクション内のすべてのキーと値を変更する
◆INIファイルの文字列を変更する

第10章 その他の操作
10-1 速度と時間の計測
◆コードの実行速度をミリ秒単位で計測する
◆Windowsを起動してから経過した時間を計測する
10-2 コード実行の中断
◆ミリ秒単位でコードの実行を中断する
10-3 カーソル点滅速度の変更
◆カーソルの点滅速度を1/2にする
10-4 サウンドの演奏/中止
◆Wave音を鳴らす

●MEMO
VBAでもハードディスクの空き容量、総容量が取得できる
API=Win APIではない
LIBとDLLのメリット・デメリット
サンクダウンとサンクアップ
マルチタスク/マルチスレッドとタイムシェアリング
同期に関するキーワード
アプリケーションウィンドウとデスクトップウィンドウ
オブジェクトの開放とハンドルのクローズ
サブクラス化
なぜVBAではAddressOf演算子があまり生かせないのか
亜流の関数名を作らない
LongPtrと Long
Declareステートメントを使用する際の補足
VBAからAPI関数を呼び出す際はコードのチェック機能は働かない
DLLプロシージャへの文字列の引き渡し
ユーザー定義型はパブリック変数
数値定数はLong型で宣言すべきか
10進数を2進数に変換する関数
まずは『サンプルプログラムの使い方』を熟読!
Excel 2002以降のアプリケーションウィンドウのハンドルを取得するHwndプロパティ
意外に重宝するSetForgroundWindow関数
Win APIでシステムをシャットダウンする
ファイルシステムオブジェクト(FSO)
GetTempFileName関数を使うときには、ファイルの削除を忘れずに
FunctionプロシージャをExcelのワークシート上で使用する
Windowsディレクトリのパス名はVBAの関数でも取得できる
API関数の引数のデータ型にも「LongPtr」を使う場合
GetDriveType関数を有効に活用しよう
FSOでドライブの種類を調べる
GetDiskFreeSpaceEx関数の値とエクスプローラーの[プロパティ]コマンドが表示する値
FSOでディスクの容量を調べる
メジャーバージョンとマイナーバージョンでWindowsの種類を判別する
レジストリを扱う際の注意点
INIファイル関数の注意点
あらゆる環境で使えるFSO
サンプルの実行
巻末資料(1) ファイルシステムオブジェクト
巻末資料(2) Win32 APIのコード一覧

ご注文

別フォーマットで購入

シェアする

このエントリーをはてなブックマークに追加

同じジャンルの商品

お知らせ

一覧