ms access 2021において
フォームを作成したのですが、
そのフォームを表示するためのウィンドウの
最小化、最大化ボタンが配置されている
最上部の部分の背景色を変更するには、
どのようにすればいいのでしょうか?
↓
Microsoft Access 2021 では、
フォームのウィンドウの最上部(タイトルバー)の背景色を変更することは、
Access の標準機能では直接できません。
しかし、以下の方法で疑似的に変更できます。
---
### **方法1: フォームのポップアップ化 + 独自のタイトルバー作成**
Access の通常のフォームでは、
タイトルバーの色を変更できませんが、
フォームの「ポップアップ」プロパティを **はい(Yes)** に設定し、
「境界線スタイル」を **なし(None)** にすると、
標準のタイトルバーを非表示にできます。
**手順**
1. フォームのデザインビューを開く
2. プロパティシートで以下の設定を変更
- **ポップアップ** → `はい`
- **境界線スタイル** → `なし`
- **コントロールボックス** → `いいえ`
- **最小化ボタン** → `いいえ`
- **最大化ボタン** → `いいえ`
- **閉じるボタン** → `いいえ`(必要に応じて)
3. フォーム上部に「ラベル」コントロールを配置して、
ウィンドウタイトルを再現する
4. ラベルの背景色を好きな色に設定する
5. 「閉じる」や「最小化」ボタンを再現したい場合は、
「コマンドボタン」を配置し、以下の VBA を適用する
#### **VBAで閉じるボタンを作成**
```vba
Private Sub cmdClose_Click()
DoCmd.Close acForm, Me.Name
End Sub
```
#### **VBAで最小化ボタンを作成**
```vba
Private Sub cmdMinimize_Click()
Me.WindowState = acMinimized
End Sub
```
#### **VBAで最大化ボタンを作成**
```vba
Private Sub cmdMaximize_Click()
Me.WindowState = acMaximized
End Sub
```
---
### **方法2: Windows のアクセントカラーを変更する**
Access のフォームのタイトルバーの色は
**Windows のアクセントカラー** に依存しているため、
システム全体の設定を変更すると影響を受けます。
**手順**
1. **Windows の設定** を開く(`Win + I`)
2. 「個人用設定」→「色」を選択
3. 「アクセントカラー」を変更
4. 「タイトル バーとウィンドウの枠線に色を付ける」をオンにする
この方法では、
Access だけでなく **他のアプリのタイトルバー** も同じ色になります。
---
### **方法3: Windows API を使って変更する(上級者向け)**
VBA で Windows API を使用すると、
Access のタイトルバーの色を個別に変更できます。
しかし、Windows のバージョンやテーマの影響を受けるため、
確実な方法とは言えません。
もし **VBA の API 呼び出し** を使った方法に興味があれば、
詳細なコードを提供できますので教えてください。
---
### **結論**
1. **Access だけで変更したいなら、
方法1(ポップアップ + 自作タイトルバー)が最適**
2. **Windows 全体の変更が可能なら、
方法2(Windows のアクセントカラーを変更)**
3. **より高度なカスタマイズをするなら、
方法3(Windows API を利用)**
どの方法が一番合いそうですか?
コメント
コメントを投稿