複数の列を持つ標準の Access リストボックスがあります。整数列または通貨列を右揃えにする方法はありますか?
6 に答える
いいえ。私が見た中で最も近いのはJustiCombo です。これは、リスト ボックスとコンボ ボックスのデータを中央揃えおよび右揃えにする関数を含むデータベースです。フォント属性と文字幅を分析してプロポーショナルフォントを使用できます。フィールドの前にスペースを詰めて、データを中央/右揃えで表示します。最善を尽くしましたが、ギザギザがいくつか見られました。でも、私が批判的すぎたのかもしれません。
私が知る限り、伝統的な意味ではありません。これを行うことができるサードパーティ製品がいくつかあると思いますが、ColumnAlignment
私が使用したどのバージョンにもリストボックスのネイティブ プロパティはありません (ただし、Access 2007 は使用していません)。
リストボックスのロード方法に応じて、固定幅フォント (Courier など)を使用し、数値を適切な数のスペースで左パディングして、右揃えをエミュレートすることができます。理想的ではありませんが、試してみる価値はあります。
- リストボックスをコンボボックスに変換
- 変換したコンボボックスを右揃えにする
- リストボックスに再度変換します
VB では次のようになります。
Format(Format("10000", "0.00%"), "@@@@@@@@@@")
ここで、「@」の数は、文字列を右寄せするフィールドの幅です。
VBA では、以下を使用できます。
xFormat(Format("10000", "0.00%"), "@@@@@@@@@@")
どこ
Function xFormat(ByVal s, ByVal width As String) As String
Dim temp As String
Dim deltaL As Integer
deltaL = Len(width) - Len(s)
If deltaL > 0 Then
temp = Space(deltaL) & s
Else
temp = s
End If
xFormat = temp
End Function