こんにちは
Excel2003 を使用しています。
マクロを使って毎回行数が違うデータをコピー貼り付けをしたいのですが
よく分かりません。コピー先の最終行そろえのコピーの方法もお願いします。
毎回データ行数が違う2つの表を、新しい表の上の部分と下の部分に分けてコピーしたいのです。
コピー元1 0~20行
コピー元2 0~20行 1と2の合計は、0~20行です。多くても20行まで。
コピー元1を1行目から、コピー元2の最下行を20行目に揃えて、
貼り付け先の表には、上部と下部の間に空白行が入っOKです。
(例)
コピー元1 コピー元2
X Y Z AA AB AC
1鈴木 千葉 男 1山本 大阪 男
2田中 東京 女 2高橋 京都 女
3 3
↓↓
貼り付け先
A B C
1鈴木 千葉 男
2田中 東京 女
3
・
・
18
19山本 大阪 男
20高橋 京都 女
のように上部と下部に分けてコピーしたいのです。
行数は毎回ちがい、合わせて20行の場合は、空白行はなくなります。
説明が、つたなく申し訳ありませんが
よろしくお願いいたします。
No.1
- 回答日時:
X,Y,Z列とAA,AB,AC列に入っているそれぞれのデータをA,B,C列にコピーするということでしょうか?
X,Y,Z列とAA,AB,AC列の1~20行に違うデータが入力されるたびに実行するマクロという理解でいいですか?
質問者様のVBAのスキルによりますが、私なら以下のようなマクロを組むと思います。
1. X,Y,Z列の1~20行に入っているデータを配列(配列1とします)に入れる。
2. AA,AB,AC列の1~20行に入っているデータを配列(配列2とします)に入れる。
3. 配列1をA,B,C列の1行目から下へ向かって書き込む。
4. 配列2を逆順にソートしてA,B,C列の20行目から上に向かって書き込む。
これで処理はできると思いますが、違うデータを処理する場合は、最初にデータが書き込まれる場所A,B,C列の1~20行目はデータを削除しておく必要があります。
質問の意味を誤解しているかもしれないので、とりあえずの回答です。
CaveatEmptorさま
早速の回答ありがとうございます。
質問の意味はその通りです。
逆順のソートして、下から書き込む、は気付きませんでした。
VBAのスキルはほとんどありません。
配列の意味から勉強します。
No.2
- 回答日時:
こんにちは。
条件として、
元1、元2、合計20件を超えないこと。
元1、元2、ともに1行めから始まっていること(質問文のまま)。
といことなら簡単に
Sub Re7744683j()
Dim rcn1 As Long
Dim rcn2 As Long
rcn1 = Cells(1, "X").End(xlDown).Row
rcn2 = Cells(1, "AA").End(xlDown).Row
Range("X:Z").Resize(rcn1).Copy Cells(1, 1)
Range("AA:AC").Resize(rcn2).Copy Cells(21 - rcn2, 1)
End Sub
とか。
No.3ベストアンサー
- 回答日時:
すみません、使い物になりませんでした。
Sub Re7744683c()
Dim rCn1 As Long
Dim rCn2 As Long
rCn1 = Cells(1, "X").End(xlDown).Row
rCn2 = Cells(1, "AA").End(xlDown).Row
If rCn1 > 21 Then rCn1 = 0
If rCn2 > 21 Then rCn2 = 0
If rCn1 + rCn2 > 20 Then MsgBox "おおすぎます": Exit Sub
If rCn1 > 0 Then Range("X:Z").Resize(rCn1).Copy Cells(1, 1)
If rCn2 > 0 Then Range("AA:AC").Resize(rCn2).Copy Cells(21 - rCn2, 1)
End Sub
ci_moverさま
回答ありがとうございました。
早速試したところ、思い通りの結果です。
内容については、これから勉強します。
助かりました。ありがとうございました。
No.4
- 回答日時:
> マクロを使って毎回行数が違うデータをコピー貼り付けをしたいのですが
> よく分かりません。コピー先の最終行そろえのコピーの方法もお願いします。
「よく分かりません」の意味がよく分かりません。
どんなマクロを組めばいいかヒントをくれ、と言う意味でしょうか。
代わりにマクロを組んでくれ、と言う意味でしょうか。
前者だと仮定して話を進めると、
(1)コピー先のA1:C20をクリア
(2)コピー元1を“そのまま”コピー先1行目に貼り付け
※提示の例だと、X1:Z2をコピー、A1に貼り付け
(3)コピー元2を“そのまま”コピー先(20-データ行数+1)行目に貼り付け
※提示の例だと、AA1:AC2をコピー、
(20-データ行数+1)=19なので、A19に貼り付け
だけのコードを、ごく単純に書きます。
各コピー元の行数チェックや、合計した行数チェック、
各行のデータの有効性の確認など、複雑に書けば書けると思いますが、
提示された条件だけならコレだけで十分対応できるかと思われます。
tsubuyukiさま
回答ありがとうございます。
当方、できたマクロを修正するくらいの知識しかありません。
最初に作る時は、マクロの記録で行っておりました。それを手直しする程度。
今回は、それでは対応できず、いろいろ調べましたが分からず質問させて頂きました。
親切に回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Visual Basic(VBA) マクロで最終行を取得したい 4 2023/05/28 12:14
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Excel(エクセル) Excel フィルタ後のコピー貼付けと可視セルの関係について 3 2023/02/07 16:42
- その他(Microsoft Office) エクセルマクロ オートフィルターでで選択コピー 2 2022/04/18 11:05
- Excel(エクセル) Excelの複数ファイルの複数行を別ファイル1つのシートにVBA、マクロで集約する方法 5 2022/09/13 06:30
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/26 09:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/07/05 09:30
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/26 13:19
このQ&Aを見た人はこんなQ&Aも見ています
-
風水の観点で選ぶ観葉植物とは?置き場所や上げたい運気ごとの注意点を紹介!
観葉植物で運気をアップするコツを、風水デザイン1級建築士の福島昌彦さんに伺った。
-
毎回変わる範囲を検索し、コピペするマクロについてご教示ください。
Excel(エクセル)
-
VBAで繰り返しコピーしながら下へ移動させる方法
Excel(エクセル)
-
行数の違う表に複数行をコピーする
Excel(エクセル)
-
-
4
マクロで貼り付け位置を可変させる方法が知りたいです。
Excel(エクセル)
-
5
【VBA】特定の値が入った行をコピーして別シートに貼り付ける方法をおしえていただきたいです。
Excel(エクセル)
-
6
Excel で行を指定回数だけコピーしたい
Excel(エクセル)
-
7
Excel VBA 複数行を数の分だけ挿入したい
Visual Basic(VBA)
-
8
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
9
End Sub が必要です。
Access(アクセス)
-
10
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
11
ヘッダー
Excel(エクセル)
-
12
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
13
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
14
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
15
VBAで文字列を数値に変換したい
Excel(エクセル)
-
16
エクセル最終行の下に貼り付け
Excel(エクセル)
-
17
エクセルマクロで不特定なファイル名を使用するには
Excel(エクセル)
-
18
「マクロ」の足し算の式を教えてくださいm()m
Excel(エクセル)
-
19
excelのマクロで該当処理できなければ飛ばして進むにはどうすればよいのでしょうか
Visual Basic(VBA)
-
20
エクセルVBA 指定範囲を指定回数繰り返しコピー
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「しておきます」は偉そう?
-
コピー防止(CCCD)であるCDの...
-
YouTubeで 時間指定 url できな...
-
Access 同じデータをたくさん...
-
REGZAで録画した番組をパソコン...
-
Youtubeのコメントをコピーする...
-
Bufferの大きさ
-
DVDのコピーガードがかかってい...
-
送られて来たURLが黒字になっ...
-
CDからUSBに音楽をコピーしたい
-
SSDからSSDにOS以外のものをデ...
-
エクセルで作った表をイラスト...
-
ヤマダ電気にその場でコピーす...
-
履歴が残らないようにパソコン...
-
コピーと送るの違い
-
会社のコピー機無断使用ってバ...
-
【大至急】SDからSDへのコピー...
-
Word文書のコメントを含めない...
-
USBメモリーからUSBメモリーに...
-
文章をコピーしたはずなのに貼...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「しておきます」は偉そう?
-
Access 同じデータをたくさん...
-
DVDのコピーガードがかかってい...
-
YouTubeで 時間指定 url できな...
-
エクセルで作った表をイラスト...
-
コピー防止(CCCD)であるCDの...
-
送られて来たURLが黒字になっ...
-
Bufferの大きさ
-
USBコピーしたら 履歴残る?
-
REGZAで録画した番組をパソコン...
-
Word文書のコメントを含めない...
-
CDからUSBに音楽をコピーしたい
-
Youtubeのコメントをコピーする...
-
SSDからSSDにOS以外のものをデ...
-
コピーと送るの違い
-
URLの貼り付け方法
-
ファミマでキャッシュカードの...
-
PDFファイルをメールにコピーす...
-
履歴が残らないようにパソコン...
-
突然、コピーアンドペーストが...
おすすめ情報