[[20050628023636]] 『Activecell 以下から文字列の最終行までのコピー』(初心者) ページの最後に飛ぶ

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

 

『Activecell 以下から文字列の最終行までのコピー』(初心者)

Activecell 以下から文字列の最終行までのコピーをマクロを使って実行したいのですがどなたか教えてもらえませんか


どのような表なのかによって作り方が違うと思うのですが・・・

もう少し具体的に書いて頂けませんか?


説明不足で済みません

横書きのカレンダーがあり指定した日付の一つ下のセルからコピーしたいのですが
(初心者)


書き込みが遅くなってすいません。

ちょっとまだどのような表かわかならないのですが、
とりあえずこれをお試し下さい。

Sub Copy()

Dim MyActiveAddress As String, MyEndAddress As String

MyActiveAddress = ActiveCell.Address

MyEndAddress = Range(MyActiveAddress).End(xlDown).Address

    Range(MyActiveAddress, Range(MyEndAddress)).Select

  Selection.Copy

End Sub

選択範囲を右にしたければ、End(xldown)の()の中を
xlToRightにしてみて下さい。


済みません。上をそのままコピーして貼り付けたのですけど、
activecell とその一つ下のセルしかコピーされないんですけど・・・・

(初心者)


すみません。どのような表でどのような動作をしたときどのような結果を出したいのか
例を出しながら説明してもらえると助かります。

ちなみに、上のマクロはアクティブセルから値が入っている下の最終行までを選択しコピーするというものです。

もし、アクティブセルのひとつ下までしか値が入っていなければアクティブセルを含め2つしかコピーしません。


本当に説明不足で済みません。「activecell から値が入っている下の最終行まで」とは
途中に空白部分もそのままコピーしてその列の最終行までをコピーしたいのですが・・・・・
上のマクロだと空白部分の上までしたコピーされないのですが
   (初心者)


 横から失礼します。( )さんが仰るように、もう少し具体的な例があったほうがいいように思います。

 たとえば、下記の場合、

    A    B    C    D
 1
 2
 3      AAA
 4      BBB
 5      CCC
 6 
 7      DDD

 この表を、下のように、

    A    B    C    D
 1 AAA
 2 BBB
 3 CCC  AAA
 4      BBB
 5 DDD  CCC
 6 
 7      DDD

 このようにコピペしたいなら、こうですか?

 Sub test()

 Dim rs, LastRow As Long

 rs = ActiveCell.Row
 LastRow = Cells(65536, ActiveCell.Column).End(xlUp).Row

 Range(Cells(rs, ActiveCell.Column), Cells(LastRow, ActiveCell.Column)).Copy Destination:=Range("A1")

 End Sub

 ただし、初心者さんが、B3セルをアクティブにしている条件です。

 (明日からしばらくは、このサイト来れないかも。。。すいません。)

 (ken)


あっ名前がなくてすいません。まだハンネを考えていないもので・・・

でもその前にまだ教えられる立場じゃないみたいです(-_-; )

(ken)様お助け感謝いたしますm(_ _)m


何度も済みません。初心者なもので・・・・。値だけをコピーしたいのですが。よろしくお願いします。
         (初心者)


 >値だけをコピーしたいのですが。
 マクロの記録を参考にすれば出来るでしょ?

 それと、あまり初心者ってアピールしないほうがいいと思いますよ。 (wizik)
http://wids.net/lib/forlusers.html

私も(wizik)さんの意見に同感です。
ただ、一度乗りかかった船ですし、他の人も参考にしてるかもしれないので書き込んでおきます。

Sub Copy()

 Dim rs, LastRow As Long

 rs = ActiveCell.Row
 LastRow = Cells(65536, ActiveCell.Column).End(xlUp).Row

 Range(Cells(rs, ActiveCell.Column), Cells(LastRow, ActiveCell.Column)).Select
 Selection.Copy
 Range("A1").PasteSpecial Paste:=xlPasteValues
 End Sub

これでとりあえず値だけを貼り付けることができると思います。

()


助かりました。どうもありがとうございました。
                      (初心者)


コメント返信:

[ 一覧(最新更新順) ]


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