ExcelVBAはそれだけで便利ですが、その中でも"ExecuteExcel4Macro"はとても便利です。これは指定したブックのセルの値をそのファイルを開かなくても持ってくることができる機能です。
基本構文は以下のとおりです。
ExecuteExcel4Macro("'C:\Excel\[test.xls]Sheet1'!R1C2")
例えばセルA1に値を入れたい場合は、
Range("A1").Value=ExecuteExcel4Macro("'C:\Excel\[test.xls]Sheet1'!R1C2")
とすると、セルA1にtest.xlsのSheet1のセルB1の値が代入できます。
パスやブック名、シート名を変数に代入することで柔軟にデータを入力できるので、いろいろな場面で使って時間短縮できます。
この機能も大変便利です。自分の行きたい場所へ瞬時に移動できます。
基本構文は
Application.GoTo reference:=Worksheets("シート名").Range("探したい範囲").Find(what:="探すキーワード", lookat:=xlWhole), Scroll:=True
です。offset関数やシート名、キーワードに変数を割り当てることで自由に移動、入力ができて大変便利です。業務では国保請求シートの利用者検索ユーザーフォームのListBox1_MouseUpイベントに設定して使っています。
Excelは米国MicroSoft Corporationの登録商標です。