【VBA】思わずポチッと押したくなるボタンの作り方
こんにちは。
日曜日は、ためになるのかならないか分からない、そんなブログを書こうかなと思っています。
くだらない内容です。ご容赦ください。
今回は思わずポチッと押したくなるボタンの作り方です!
Excelマクロでは、挿入した好きな図形にマクロを登録できますが、より押したくなる、そしてボタンを押した感がでるボタンが欲しくて作りました。
お好きな処理と組み合わせて使ってみてください。
ボタンを作成して加工する
まず適当な楕円の図を挿入して、ずの名前をbtnStartとします。
以下のマクロで図の設定を施します。
Sub btnStartSet() 'ボタンの作成
Dim btnSheet As Worksheet
Set btnSheet = ActiveSheet
btnSheet.Shapes("btnStart").Select
'形、サイズ、名前
btnSheet.Shapes("btnStart").Height = 50.2
btnSheet.Shapes("btnStart").Width = 66.3
'塗りつぶし
btnSheet.Shapes("btnStart").Fill.ForeColor.RGB = RGB(255, 0, 0) '塗りつぶしの色
'枠線
Selection.ShapeRange.Line.Visible = msoFalse
'3D
btnSheet.Shapes("btnStart").ThreeD.RotationY = -35.1560166667 '図形のY軸周りの回転角度
btnSheet.Shapes("btnStart").ThreeD.FieldOfView = 45 '3-D図形遠近感
btnSheet.Shapes("btnStart").ThreeD.BevelTopType = msoBevelArtDeco '面取り設定
btnSheet.Shapes("btnStart").ThreeD.BevelTopInset = 10
btnSheet.Shapes("btnStart").ThreeD.BevelTopDepth = 6
End Sub
これです。
押したら何かが起こりそうなボタンです!
「お…押してみたい…」
ボタンを押したあとの加工
作ったボタンに、押した感が出るように以下のマクロを登録して実行します。
Sub btnStartClick() 'ボタンを押したあとの加工
Dim btnSheet As Worksheet
Set btnSheet = ActiveSheet
btnSheet.Shapes("btnStart").Select
btnSheet.Shapes("btnStart").ThreeD.BevelTopType = msoBevelSlope '面取り設定
btnSheet.Shapes("btnStart").ThreeD.BevelTopInset = 5.5 '3D加工の幅
btnSheet.Shapes("btnStart").ThreeD.BevelTopDepth = 6 '3D加工の高さ
End Sub
押す前の状態にリセットする
以下のマクロをリセットボタンに登録してリセットさせます。
Sub btnStartEnd() 'ボタンをリセット加工
Dim btnSheet As Worksheet
Set btnSheet = ActiveSheet
btnSheet.Shapes("btnStart").Select
btnSheet.Shapes("btnStart").ThreeD.BevelTopType = msoBevelArtDeco '面取り設定
btnSheet.Shapes("btnStart").ThreeD.BevelTopInset = 10 '3D加工の幅
btnSheet.Shapes("btnStart").ThreeD.BevelTopDepth = 6 '3D加工の高さ
End Sub
ちなみに
挿入>3Dモデル>"ボタン"で検索 にそれっぽいのもあるみたいです~
初めてみました!
おまけ
Author And Source
この問題について(【VBA】思わずポチッと押したくなるボタンの作り方), 我々は、より多くの情報をここで見つけました https://qiita.com/KaoTechBlog/items/6f0b6eb2fa89a4b2739d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .