
Excelで、ユーザーフォームの画像の枠を立体的に浮き出したり、影をつけたりする記録です。
VBAで設定する方法と、プロパティで手動で設定する方法です。
< スポンサーリンク >
プロパティで画像枠を立体的にする設定
VBE上で画像枠をアクティブにし、プロパティウィンドウのボタンをクリックします。

プロパティウィンドウの[SpecialEffect]欄を「0 – fmSpecialEffectFlat」に設定すると、平面的に表示され、境界線や色の違いによって背景と区別されます。


プロパティウィンドウの[SpecialEffect]欄を「1 – fmSpecialEffectRaised」に設定すると、上端と左端が強調され、下端と右端に影がつきます。


プロパティウィンドウの[SpecialEffect]欄を「2 – fmSpecialEffectSunken」に設定すると、上辺と左辺には影がつけられ、下辺と右辺は強調表示されます。


プロパティウィンドウの[SpecialEffect]欄を「3 – fmSpecialEffectEtched」に設定すると、境界線が周囲に彫り込まれているように見えます。


プロパティウィンドウの[SpecialEffect]欄を「6 – fmSpecialEffectBump」に設定すると、下端と右端に浮き出しが強調され、上端と左端は平面的に表示されます。


VBAで画像枠を立体的にする設定
Initializeイベントを使って画像の表示を設定してみます。
ユーザーフォームをダブルクリックします。

右側のプロシージャボックスで「Initialize」を選択します。

「fmSpecialEffectFlat」に設定するコードです。
Private Sub UserForm_Initialize()
Image1.SpecialEffect = fmSpecialEffectFlat
End Sub


「fmSpecialEffectRaised」に設定するコードです。
Private Sub UserForm_Initialize()
Image1.SpecialEffect = fmSpecialEffectRaised
End Sub


「fmSpecialEffectSunken」に設定するコードです。
Private Sub UserForm_Initialize()
Image1.SpecialEffect = fmSpecialEffectSunken
End Sub


「fmSpecialEffectEtched」に設定するコードです。
Private Sub UserForm_Initialize()
Image1.SpecialEffect = fmSpecialEffectEtched
End Sub


「fmSpecialEffectBump」に設定するコードです。
Private Sub UserForm_Initialize()
Image1.SpecialEffect = fmSpecialEffectBump
End Sub


こんな記事も書いています
