プロが教える店舗&オフィスのセキュリティ対策術

Excel VBAでアクティブでないシートのセルをSelectすることはできないのでしょうか。
Selectメソッドというのは,もともとそういうものなのでしょうか。

エラー:
「RangeクラスのSelectメソッドが失敗しました。」

コード
Sub aaa()
With Worksheets("Sheet2")
.Range(.Cells(44, 1), .Cells(48, 21)).Select
End With
End Sub

A 回答 (2件)

VBAといえ、手で出来ないことはできません。


現在、画面で見えていないシートのセル選択もその代表例ですね。

で、ご質問の意図は見えていないシートのセル選択させることですか?
それはあまり意味のないことなので本当は選択して何かをしたいのではなかろうかと推察します。

たとえば、その範囲のデータを消去させるのであれば、選択しなくとも以下のように書けます。

Sub aaa()
  With Worksheets("Sheet2")
    .Range(.Cells(44, 1), .Cells(48, 21)).ClearContents
  End With
End Sub
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

お礼日時:2010/12/03 19:38

ワークシートをアクティブにしてから範囲の選択を行うようにします。



Sub aaa()
Worksheets("Sheet2").Activate
With Worksheets("Sheet2")
.Range(.Cells(44, 1), .Cells(48, 21)).Select
End With
End Sub
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

お礼日時:2010/12/03 19:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!