• ベストアンサー

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

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.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.でもよい。

tomoyochan
質問者

お礼

私のコードのだめな理由も指摘していただいて、スッキリ解決しました。丁寧なアドバイスありがとうございました。

その他の回答 (1)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Sheets("Sheet2").Select ActiveSheet.Range(Target.Address).Select End Sub

tomoyochan
質問者

お礼

早速の回答ありがとうございました。 助かりました。

関連するQ&A

専門家に質問してみよう