0

私のAccessアプリケーションには、実際には単なるクエリであるサブレポートを含むレポートがあります。

問題のクエリは、事前に準備されたストアドプロシージャを実行するだけのパススルークエリです。クエリは動的に作成されるため、レポートのリクエスト(ボタンをクリック)に使用するフォームからいくつかの日付パラメーターを渡すことができます。

SQL Server Management Studioで結果を返すと、列名が非常に狭く、データが0〜100の範囲の整数であるため、このクエリの8列または9列は非常に狭くなっています。

MS Accessでは、クエリがレポートに埋め込まれている場合、Accessは列幅を設定しているように見えます。これは、紙が横向きであっても、すべての列がページに収まらないことを意味します。

とにかく、Accessに列幅を狭くするように指示することができますか?

4

2 に答える 2

1

クエリの列幅は次のように設定できます。

Sub SetColumnWidth()
Dim qdf1 As DAO.QueryDef
Dim fld1 As DAO.Field

Set qdf1 = CurrentDb.QueryDefs("query3")

For i = 0 To qdf1.Fields.Count - 1
    Set fld1 = qdf1.Fields(i)
    fld1.CreateProperty "ColumnWidth", dbInteger
    'very narrow indeed
    fld1.Properties("ColumnWidth") = 200
    Set fld1 = Nothing
Next i

End Sub
于 2012-10-01T20:09:16.277 に答える
0

私が見つけた最善の解決策は、データソースとしてクエリを持ち、データシートビューに表示されるフォームウィザードを使用してフォームを作成することです。

これをレポートに埋め込むと、フォームのデータフィールドのフィールド幅をレイアウトモードに合わせて調整できます。

于 2012-10-06T17:48:02.037 に答える