teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

説明追記

2021/10/21 18:46

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -1,3 +1,23 @@
1
1
  列の表示/非表示だけなら ColumnHiddenプロパティを使えばいいでしょう。
2
2
 
3
- [TextBox.ColumnHidden プロパティ (Access) | Microsoft Docs](https://docs.microsoft.com/ja-jp/office/vba/api/access.textbox.columnhidden)
3
+ [TextBox.ColumnHidden プロパティ (Access) | Microsoft Docs](https://docs.microsoft.com/ja-jp/office/vba/api/access.textbox.columnhidden)
4
+
5
+ 追記
6
+ ---
7
+ コメントで、列名(フィールド名)もその都度変わるとのことでしたので、
8
+ フォームを使っていてはコントロールソースを変更したりなど、いろいろと面倒です。
9
+
10
+ データシートビューでいいのなら、サブフォームのソースオプジェクトに直接クエリを設定することが可能ですので、仮のクエリを作っておいて、そのクエリのSQLを変更して、ソースオプジェクトに設定すればいいでしょう。
11
+
12
+ 事前に適当なテーブルからクエリを作成しておきます。(SQLを書き換えるのでなんでもOKです。)
13
+ 名前は Q_FSrc とします。
14
+
15
+ ```vba
16
+ Private Sub コマンド0_Click()
17
+ Dim qd As QueryDef
18
+ Set qd = CurrentDb.QueryDefs("Q_FSrc")
19
+ qd.sql = "SELECT 名前, 年齢, 住所 FROM 従業員TBL;"
20
+ Me.サブフォーム.SourceObject = ""
21
+ Me.サブフォーム.SourceObject = "クエリ.Q_FSrc"
22
+ End Sub
23
+ ```

1

説明追記

2021/10/21 18:46

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -1,3 +1,3 @@
1
- ColumnHiddenプロパティを使えばいいでしょう。
1
+ 列の表示/非表示だけなら ColumnHiddenプロパティを使えばいいでしょう。
2
2
 
3
3
  [TextBox.ColumnHidden プロパティ (Access) | Microsoft Docs](https://docs.microsoft.com/ja-jp/office/vba/api/access.textbox.columnhidden)