
お世話になっております。
マクロを使って複数のセルを選択してコピーし、別のブックにあるシートへ
貼り付けたいのですが上手くいきません。
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
上記のようにコピーしたいセルの入っている行全体の貼り付けは出来たのですが、必要なデータのセルのみ(隣り合っていない)を選択して
貼り付けようとすると何もコピーされていない状態で終了してしまいます。
(変数に代入してコピー等・・・)
どなたか教えて下さい。
No.3ベストアンサー
- 回答日時:
#2です。
レスが遅くなりました。
私の環境(Excel2000)では
"Worksheet(X)" → "Worksheets(X)"
の表記を直しただけで普通に動きましたよ。
エラー処理とか入れてるなら、構文エラーでプロシージャを抜けてるだけでは無いですか?
回答ありがとうございます。
>"Worksheet(X)" → "Worksheets(X)"
始めから確認してみました。指定したセルへも行かなかったのは↑が間違いでした。(すみません・・)
あと、変数への代入がきちんと出来ていないのもありました。(自分では大丈夫なつもりでしたが)
コードに間違いはなかったようなのでOffsetはやめて以前に回答いただいた
コードを参考に下記のコードで実行したら出来ました。
ThisWorkbook.Sheets("2006").Activate
AA = ActiveCell.Address
Acell = Range(AA).Row
Set r = Union(Cells(Acell, 2), Cells(Acell, 4), Cells(Acell, 5))
r.Copy Destination:=Workbooks("2007.xls").Worksheets(X).Range("B1")
まだまだこの続きでマクロを作成していくので以後気をつけたいと思います。
ありがとうございました。
No.2
- 回答日時:
上手くいかないコードを載せないと、コードが悪いのか、そもそも無理な事をしたいのかも判断出来ませんよ。
ちなみに下記は Sheet1 の セル A1,C1,E1,G1,I1 をSheet2のA1:E1 にコピーします。
Sub Test()
Dim r As Range, i As integer
With Worksheets("Sheet1")
Set r = .Cells(1, 1)
For i = 3 To 9 Step 2
Set r = Union(r, .Cells(1, i))
Next i
End With
r.Copy Destination:=Worksheets("Sheet2").Range("A1")
End Sub
回答ありがとうございます。
無理かどうかよりもまずコードがおかしいとは思うのですが・・載せてみます。
ThisWorkbook.Sheets("2006").Activate
Set rngC = Application.Union(ActiveCell, ActiveCell.Offset(, 2), ActiveCell.Offset(, 3))
rngC.Copy Destination:=Workbooks("2007.xls").Worksheet(X).Range("A1")
貼付け先のWorksheet(X)は変数です。2つのブックはすでに開いている状態です。
下記のコードだと2007のブックにデータの入っている行全体がコピーされるのですが、上記のコードだと指定したセルへも行きません。。
教えて頂いたコードを参考に始めから作り直してみます。ありがとうございました。
ThisWorkbook.Sheets("2006").Activate
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
Workbooks("2007.xls").Activate
Range("A1").Select
ActiveSheet.Paste
No.1
- 回答日時:
>(隣り合っていない)を選択して
の操作は、VBAでなくても 出来ないのでは?。
確認してください。
VBA以外(通常の操作)で、出来ないことは、VBAでもできないのです。
回答ありがとうございます。
別々のブック間で複数セルのコピーというのは無理なんでしょうか・・??
すみません。VBA初心者なのでわからないことだらけです。
Range(Selection, Selection.End(xlToRight)).Select
を変数に代入して.renge(変数,2)というふうに指定してみたり色々としてみるのですが、ますます動かなくなってしまいました(^^;)
とりあえず勉強のつもりでもう少し調べてみます。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) データのある範囲を選択するVBAについて 2 2022/09/03 00:20
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Excel(エクセル) マクロVBA別Excelブックにデータ転記 2 2022/07/10 23:35
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Excel(エクセル) Excel フィルタ後のコピー貼付けと可視セルの関係について 3 2023/02/07 16:42
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/25 11:55
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 1 2023/02/27 22:21
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
エクセルで隣接していない複数...
-
エクセルで勝手に「折り返して...
-
メールソフト「サンダーバード...
-
エクセルの2ページ目の作り方
-
Excel 行の連続データを列に参...
-
Excelに、ダブルクォーテーショ...
-
エクセルで、選択範囲の数値全...
-
「選択範囲を解除してアクティ...
-
フォームのテキストボックスの...
-
エクセルで値だけコピーして背...
-
エクセル 別シートへのコピー...
-
行数の違う表に複数行をコピーする
-
EXCELのオートフィルの設定を変...
-
エクセルで「コピーしたセルの...
-
エクセル・数値が変化したらカ...
-
エクセル コピーしたデータを1...
-
VBAでセルがコピーされているか...
-
エクセルでの行数・列数を指定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
エクセルで勝手に「折り返して...
-
エクセルで隣接していない複数...
-
Excel 行の連続データを列に参...
-
エクセルの2ページ目の作り方
-
メールソフト「サンダーバード...
-
Excelに、ダブルクォーテーショ...
-
エクセルで、選択範囲の数値全...
-
「選択範囲を解除してアクティ...
-
エクセルで「コピーしたセルの...
-
エクセル 別シートへのコピー...
-
エクセルで値だけコピーして背...
-
エクセルのコピペでクリップボ...
-
エクセルでの行数・列数を指定...
-
EXCEL数値が存在する列の項目名...
-
EXCELのオートフィルの設定を変...
-
行数の違う表に複数行をコピーする
-
Excelでコピーした行の挿入を繰...
-
エクセル コピーしたデータを1...
おすすめ情報