[[20161125194835]] 『アクティブセルを関係なくA6セルで実行するには』(koichi) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『アクティブセルを関係なくA6セルで実行するには』(koichi)

アクティブセルがどこにあっても"A6"セルで以下を
実行するにはどのような修正が必要でしょうか

初歩的な質問だと思いますがよろしくお願いします。
Private Sub CommandButton1_Click()

    With ActiveCell
        If Not Intersect(Target, Range("A6")) Is Nothing Then
            End If
    End With

    With Sheets("項目").UsedRange
        ActiveCell.Resize(.Rows.Count, .Columns.Count).Value = .Cells.Value
    End With
End Sub

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 回答の前に。

 このコードが、シート上のActiveX対処のためにシートモジュールに書かれているのか
 あるいは、ユーザーフォーム上のCommandButton1 のために ユーザーフォームモジュールに書かれているのか
 わかりませんけど、いずれにしても Target って何でしょう?

 シート上のイベントプロシジャで、そのイベントが発生した領域が Target に渡されるものが多いのですが
 CommandButton1_Click にたいしては、そんな情報はありません。

 Target は何を意図しておられましたか?

 次に、一番肝心なことですけど、どんな時に、何をしたいのでしょうか?

 >>アクティブセルがどこにあっても"A6"セルで以下を実行する

 A6 で実行する という表現もわからないのですが、何を実行したいのでしょうか。
 コードを拝見しても、想像力がプアなので。かつ、勝手に想像して、間違ったレスをしても二度手間になりますし。

(β) 2016/11/25(金) 20:03


ネット上で、似たようなケースがあり
book内の、別シートからコピー貼付を実行しようとしたのですが
>いずれにしても Target って何でしょう?
確かに Target ここでマクロが止まってしまいました。
初心者ですみません。
コピペの開始位置を かならず"A6"セルとしたいのです。
分かりにくい説明ですがよろしくお願いします。

(koichi) 2016/11/25(金) 20:27


 どうも、よくわかりませんが、

 今、表示されているシートの A6 を起点にした領域に、"項目"シートの使用領域の矩形を値転記するということであれば

 Sub Test()
    With Sheets("項目").UsedRange
        Range("A6").Resize(.Rows.Count, .Columns.Count).Value = .Value
    End With
 End Sub

 こんなコードになるのですが、本当に、やりたいことは、そういうことなんですか?

 このコードは、シートモジュールではなく、標準モジュールに書いてください。

(β) 2016/11/25(金) 20:59


(β)さん
返事遅くなりました。
無事しーとの転記ができました。
ありがとうございました。
(koichi) 2016/11/26(土) 01:25

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.