普段よく使うマクロはすぐに使用できるようツールバーに登録してます。
作り方の手順を簡単に説明します。
1 まずツールバーにアイコンを設定します。
マクロの内容は
Sub プリンター確認()
MsgBox ActivePrinter
End sub
という、至極簡単なプログラムです。このような手順で普段よく使うマクロをツールバーに登録しておくと、仕事がはかどります。
ちなみに
Sub 検算()
Dim myRng As Range
Set myRng = ActiveWindow.Selection
MsgBox "合計は、" & Application.WorksheetFunction.CountA(myRng) & "個 :" & " " _
& Format(WorksheetFunction.Sum(myRng), "#,##0") & "円です。"
Set myRng = Nothing
End Sub
は、選んだセルの個数と数値合計を円単位付きで計算してくれるので、検算に便利です。ツールバーでは電卓のアイコンに登録してます。
また、作業中Enter後にセルの移動を変えたいときは矢印アイコンにそれぞれ動きを登録してます。
ソースコードは上から順に
Sub Enter右移動()
Application.MoveAfterReturnDirection = xlToRight
End Sub
Sub Enter下移動()
Application.MoveAfterReturnDirection = xlDown
End Sub
Sub 上へ() '一気に上に戻りたいときお好みのセルを指定します
Range("A1").Select
End Sub
Sub 最下行() ’列名をinputboxに入力するとその列の入力された最下行に移動します
Dim i As String
i = InputBox("列名を入力してください。")
On Error GoTo myerr
Range(i & "65536").End(xlUp).Select
Exit Sub
myerr: MsgBox "キャンセルされました。"
End Sub
です。また、特に便利に使っているのが作業の途中でWeb検索したいとき、いちいちInternetExplorerを開かなくても、どこか開いたところにキーワードを打ち込み、打ち込んだセルを指定して地球アイコンを押します。すると自動で検索してくれます。なかなか便利ですよ!ソースコードは以下の通りです。解説本に載ってるのを参考に作りました(^^;
Sub Web検索()
Dim a As String
a = ActiveCell.Value
Call Yahoo検索(a)
ActiveCell.Value = ""
End Sub
Sub Yahoo検索(keyWD)
Dim objIE As Object
Dim strURL As String
Set objIE = CreateObject("InternetExplorer.Application")
strURL = "http://www.yahoo.co.jp/"
With objIE
.Visible = True
.Navigate2 strURL
Do While .Busy = True 'Webページが読み込み中かどうかを示します
DoEvents '処理の途中にオペレーティングシステムに制御を移すための関数
"http://www.vba-ie.net/function/doevents.html"
Loop
Do While .document.ReadyState <> "complete" 'IEオブジェクトのドキュメントの読み込み状態を示します "http://www.vba-ie.net/ieobject/readystate.html#a1"
DoEvents
Loop
.document.getElementById("srchtxt").Value = keyWD
.document.forms(0).Submit
End With
End Sub
2007以降のバージョンはメニューバーがリボンになったため、直接ツールバーには登録できないみたいです。で、アクセスツールバーに登録して使っています。アイコンもテキスト表示ができないので、この点がちょっと不便です。
Excelは米国MicroSoft Corporationの登録商標です。