MS Access Tips/Sample and VBA and Blog customize etc...

ブログのカスタマイズにはまる

ブログをBroachからここFC2へ引っ越して半月たちましたが、カスタマイズの自由度の高さに驚きました。そして、カスタマイズにはまりました。...

レコードを横に展開する

データベースのテーブルでは、項目名(フィールド)は横に並び、その下にデータ(レコード)が縦に展開していきます。 ウィザードを使って表形式のレポートを使っても当然そうなります。 しかし、場合によっては、項目名を縦に配置して、データを横に展開していくレイアウトにしたい場合があります。 方法としては、ペンション萩さんのサイトの下記で紹介されている横向きフォントで縦書きにするという方法があります。...

ヘッダと明細をテキストにエキスポート

Accessで伝票ヘッダと伝票明細を別テーブルで管理しています。 伝票データを他システムに引き渡すために、Accessでの伝票ヘッダと明細を交互に テキストデータに出力する必要に迫られています。 とある掲示板での質問です。VBAが得意な人なら、レコードセットを開いて、フィールドデータを連結してPrint #ステートメントやFileSystemObjectのWriteLineで書き出していけば簡単にできますね。 VBAはちょっとという人でも、クエリ...

Enterキー押下で特定ボタンの処理を実行

ある特定の処理を実行するためのダイアログ的なフォームで、実行ボタンとキャンセルボタンを配置する場合があります。 この場合、Enterキーを押すと実行ボタンに割り当てられた処理を実行する。Escキーを押すと、処理を中止して、そのダイアログフォームを閉じる。 というのが、Windowsの標準的なインターフェイスになります。 今回は、このような動作を簡単に実現する方法です。 難易度:...

一対一関係のテーブル設計

一対一の関係のデータは一つのテーブルにまとめるというのが、データベース設計のセオリーです。ですので、特別な事情が無い限りは一対一関係のテーブルを作るメリットはないです。ただ、絶対に一対一の設計はNGというわけでもありません。 一対一の関係が必要な特別な事情の例と、その場合の設計法や注意する点について、今回は取り上げます。 難易度:...

非連結のチェックボックスでレコードを選択する

帳票フォームでチェックボックスを配置して、チェックしたレコードのみ選択して印刷したいのですが、一つのレコードをチェックするとすべてのレコードが選択されてしまいます。 掲示板でたまにみかける質問です。気持ちは分かりますが、非連結コントロールでの更新はすべてのレコードに反映されてしまいます。一つのコントロールにプロパティ値は一つしかもてませんので。各レコード毎にプロパティ値を持つような設計にしたら大量...

グループ毎に Page/Pages 形式のページ数を表示する

Access掲示板の FAQ TOP 10 に入るであろう、レポートで、グループ毎に Page/Pages 形式のページ数を表示する方法を紹介します。 MS サポート技術情報 で紹介されている方法がよく知られていますが、これは、コードが長くかなり難解な方法になっています。一時テーブルも使うのでデータペースファイルの肥大化も気になります。 難易度:...

複数のフィールドの組み合わせで重複がないようにする

複数のフィールドの組み合わせで重複がないようにしたい、あるいは、主キーとして利用したい、という場合があります。 例えば、 販売先CD別商品CD別価格設定のテーブルで、一つの販売先CDで、同じ商品CDの入力を防ぎたい。 学校の生徒マスターで、 学生番号(主キー)、氏名、学年、クラス、出席番号 というようなフィールド構成で、学年、クラス、出席番号 で重複がないようにしたい。 ホテルや旅館の 予約管理テーブルで、...

データ型不一致エラーメッセージを変更する

連結テキストボックスで、データ型に合わない値を入力したとき、Accessくんは、 このフィールドに入力した値が正しくありません。 たとえば、数値型のフィールドに文字列を入力しました。 という無粋なエラーメッセージを出します。 もう少し分かりやすく具体的にメッセージを表示したいと思いますよね。 先日もこのような質問がとある掲示板でありました。私はついうっかり入力チェックは更新前処理というセオリーに従って回...
該当の記事は見つかりませんでした。