Access (VBA)

Access VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Access 2003)
クエリの結果で列の幅を最適幅にして表示する
投稿日時: 18/01/08 09:40:44
投稿者: かきぬま

エクセルの処理ですと列の幅を最適幅に調整して表示できますが
同じようにクエリの結果を表示した時に、列の幅を最適幅に調整したいのですが何か方法は無いでしょうか?
 
エクセルだと、下記で列の幅を最適幅にできました。
 Dim Sh As Object
 Dim myCnt As Integer
 Sh.Range(範囲を指定する).Columns.AutoFit
 
下記は今テスト中のクエリです。
 Dim Qdf As DAO.QueryDef
 
 Set Qdf = CurrentDb.CreateQueryDef("Q_TEST", "SELECT * FROM T_TBL;")
 Set Qdf = Nothing
 DoCmd.OpenQuery "Q_TEST"

回答
投稿日時: 18/01/09 09:51:00
投稿者: sk

引用:
クエリの結果を表示した時に、列の幅を最適幅に調整したい

引用:
DoCmd.OpenQuery "Q_TEST"

Dim frm As Access.Form
Dim ctl As Access.Control
 
DoCmd.OpenQuery "Q_TEST"
 
Set frm = Screen.ActiveDatasheet
 
For Each ctl In frm.Controls
    ctl.ColumnWidth = -2
Next
 
Set ctl = Nothing
Set frm = Nothing
 
引用:
エクセルの処理ですと列の幅を最適幅に調整して表示できますが

但し Excel における AutoFit メソッドとは
動作仕様が異なりますのでご注意下さい。
( Access の場合、ウィンドウ内に表示されている
 レコードのみを自動調整の対象としている)

投稿日時: 18/01/10 08:55:33
投稿者: かきぬま

skさん
ありがとうございます!!
解決です