Microsoft Access 掲示板

VBAで条件付き書式を4件以上 / 8

9 コメント
views
4 フォロー
8
hiroton 2022/02/14 (月) 11:48:46 9ea4e@f966d

文字色がレコードに保存されているならリッチテキスト形式を使うと楽ができるかもしれません

標準モジュールに次の関数を追加する(※)

'R+G*256+B*256*256の値をカラーコード表記に変換する
Function getColorCode_D2H(decimalValue As Long)
    Dim HexString As String
    HexString = Right("000000" & Hex(decimalValue), 6)
    
    '並び順がBGRなので順番を変えてカラーコード表記にする
    getColorCode_D2H = "#" & Right(HexString, 2) & Mid(HexString, 3, 2) & Left(HexString, 2)
End Function

新たにテキストボックスを設置する

コントロールソース: ="<font color=""" & getColorCode_D2H([文字色]) & """>" & [項目] & "</font>"
文字書式:リッチ テキスト形式

このテキストボックスは編集できないので、編集が必要なら元のテキストボックスにぴったり重ね合わせて(前面配置にする)フォーカス取得時にMe!項目.setFocusとかしてあげる必要があります

(※)単純な計算なので関数を使わず直接コントロールソースで計算させることもできます

="<font color=""#" & Right(Hex([文字色]+256),2) & Mid(Hex([文字色]+16777216),4,2) & Mid(Hex([文字色]+16777216),2,2) & """>" & [項目] & "</font>"
通報 ...