- ベストアンサー
Excel2000 VBA ダブルクリックで別シートの同番地セルへ移動
sheet1とsheet2 の2つのシートがあります。 sheet1のA1セルをダブルクリックすると、sheet2のA1セルへ移動させたいのですが、 下記のコードで実行すると、 'Range'メソッドは失敗しました:'_WorkSeet'オブジェクト のエラーメッセージが表示されました。 どうぞアドバイスお願い致します。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Sheets("sheet2").Select Range("Target.Address").Select End Sub
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
(1)("Target.Address").と””で囲んで,リテラルの文字列である「TargetAddress」という文字列にしてしまってはダメ。変数のままで使う。 (2)標準モジュールで Sub test02() Worksheets("Sheet2").Range("A1").Select End Sub はエラー。 RangeのSelectはActivateかSelectかしておくと Sub test02() Worksheets("Sheet2").Activate Worksheets("Sheet2").Range("A1").Select End Sub ならOK。 結局 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Sheets("sheet2").Activate Sheets("sheet2").Range(Target.Address).Select End Sub Sheets("sheet2").はActiveSheet.でもよい。
その他の回答 (1)
- zap35
- ベストアンサー率44% (1383/3079)
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Sheets("Sheet2").Select ActiveSheet.Range(Target.Address).Select End Sub
お礼
早速の回答ありがとうございました。 助かりました。
お礼
私のコードのだめな理由も指摘していただいて、スッキリ解決しました。丁寧なアドバイスありがとうございました。