かめはうすぶろぐ

なんだかねぇ~

記事のタイトルを入力してください(必須)

2014-03-10 18:47:51 | 近況は

絵下から3つ分をExcelの右クリックメニューに追加するには、
まず標準モジュールに次のコマンドを書く。

Sub AddMenu1()
Dim Newb1
Set Newb1 = Application.CommandBars("Cell").Controls.Add()
With Newb1
.Caption = "カーソル↓"
.OnAction = "Sample1"
.BeginGroup = False
End With
End Sub

Sub Sample1()
Application.MoveAfterReturnDirection = xlDown
End Sub

Sub DelMenu1()
Application.CommandBars("Cell").Controls("カーソル↓").Delete
End Sub


Sub AddMenu2()
Dim Newb2
Set Newb2 = Application.CommandBars("Cell").Controls.Add()
With Newb2
.Caption = "カーソル→"
.OnAction = "Sample2"
.BeginGroup = False
End With
End Sub

Sub Sample2()
Application.MoveAfterReturnDirection = xlToRight
End Sub

Sub DelMenu2()
Application.CommandBars("Cell").Controls("カーソル→").Delete
End Sub


Sub AddMenu3()
Dim Newb3
Set Newb3 = Application.CommandBars("Cell").Controls.Add()
With Newb3
.Caption = "値変換"
.OnAction = "Sample3"
.BeginGroup = False
End With
End Sub

Sub Sample3()
Dim myrng As Range
On Error GoTo エラー処理
ActiveCell.Value = ActiveCell.Value
エラー処理:
Exit Sub
On Error GoTo 0
End Sub

Sub DelMenu3()
Application.CommandBars("Cell").Controls("値変換").Delete
End Sub

'メニューが一杯出てきたときに対応((笑))
Sub 右クリックメニュー全削除()
Application.CommandBars("cell").Reset
End Sub


そしたら今度は、This WorkBookに以下のコマンドを書きましょう。

Private Sub Workbook_Open()
Application.CommandBars("cell").Reset
Call AddMenu1
Call AddMenu2
Call AddMenu3
End Sub


Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call DelMenu1
Call DelMenu2
Call AddMenu3
Application.MoveAfterReturnDirection = xlToRight
End Sub

そして書き終えたら、一旦これを「Excel マクロ有効ブック」で保存する。
拡張子は .xlsm

そして次にそのまま今度は、このファイルを「Excelアドイン」で保存する。
拡張子は.xlamだ。

ちょっと、一杯呑んで書いてるから、訳解らんようになってきた・・・

最新の画像もっと見る

コメントを投稿