Excel2016にて、マクロを利用してとあるCSVファイルの内容をEXCELに転記してそのデータ行ごとにチェックボックスを設置する処理を作成しました。
おおよそこのような形です。
vba
1Dim makeCell As Object 2Dim rowNum As Integer '渡された行番号 3Dim cellName As String '行ごとのチェックボックスを配置するセル番号 4Set makeCell = Range(cellName) 5 With ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", _ 6 Link:=False, DisplayAsIcon:=False, _ 7 Left:=makeCell.Left, Top:=makeCell.Top, Width:=makeCell.Width, Height:=makeCell.Height) 8 .Name = "check_" & rowNum 9 .Object.Caption = "" 10 .Object.BackStyle = fmBackStyleTransparent '透明にしているつもり 11 '.Object.BackColor = &HFFFFC0 '透明のカラーコードはない? 12 End With 13
処理自体は完成したのですが、作成されたチェックボックスの背景色が白くなってしまいます。
チェックボックスの背景を透過し、データ行の背景色が見えるようにしたいのですが、可能でしょうか。
自分で調べた中では
.Object.BackStyle = fmBackStyleTransparent
の指定などが出てきましたが、透過されませんでした。
画面上でオブジェクトのプロパティを直接編集し、
オブジェクトの書式設定>色と線>透明
を確認すると0%だったので、ここを100%にしたところ背景が透過されるようでした。
Objectクラスのプロパティに透明度の項目があれば解決しそうな気がするのですが、
少し調べた限りでは見つけることができませんでした。
どなたか解決方法ご存知でしたらご教授願います。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。