|
▼カド さん:
こんばんは。
なるほど・・・。
>マクロの記録で得た以下のコードが有ります。
>
>Sub Macro()
> Rows("1:2").Select
> Selection.Cut
> Sheets("ごみ箱").Select
> Range("A1").Select
> ActiveSheet.Paste
> Sheets("Sheet1").Select
> Selection.Delete Shift:=xlUp
>End Sub
>
>
>これを使い易いようにと、以下のようにコマンドボタンに貼り付けました。
>ところが、
>「実行時エラー’1004’:
>アプリケーション定義またはオブジェクト定義のエラーです。」
>と出て動きません。
>
>どうして動かないのでしょうか?
>
>Private Sub CommandButton1_Click()
> Rows("1:2").Select
> Selection.Cut
> Sheets("ごみ箱").Select
msgbox Range("A1").parent.name
'としてみると理由がわかるとおもいますが。
' このRange("A1")は、Me.Range("A1")です。
'よって、Range("a1").Selectがエラーになってしまうのです。
(Selectは、親オブジェクトから順にしなければならないからです)
> Range("A1").Select ← ここでエラーが出る
application.range("a1").select
'とすればエラーは発生せず、意図された動作になると思います。
> ActiveSheet.Paste
> Sheets("Sheet1").Select
> Selection.Delete Shift:=xlUp
>End Sub
試してみてください。
|
|