
ExcelのVBAについて勉強中です。
Excel2003で表から表への転記を行いたいのですが、
コードがうまく書けないため、教えていただきたいです。
やりたいこととしましては、
A1:D6のうちピンクの部分を、横一列に並べ替えながら、
F1:M6の色つきの部分(実際はより横に広くなります)に転記したいです。
ピンクの部分はその都度、値を変えて、
黄→緑→水色→青→紫・・・
と毎回マクロを実行するたびに最下行に追加できるような形にしたいです。
また、画像は同じシートに転記をしていますが、
別のシートの同様の表から同じように転記する場合、
どうコード変わるかも教えていただけましたら助かります。
自分では、下記のようなコードしか書けませんでした。
転記先の表は30列程度になる予定ですので、
出来ればシンプルなコードを教えていただきたいです。
Sub コピー()
Range("B2").Select
Selection.Copy
Range("G2").End(xlUp).Offset(1).Select
ActiveSheet.Paste
End sub
分かりづらい説明かと思いますが、
よろしくお願いします。

No.1ベストアンサー
- 回答日時:
その程度の転写なら、あんまりカッコつけてやろうとせずに1個ずつ順番に転記してった方が、シンプルで間違いもありません。
sub macro1()
dim h as range
dim c as long
dim LastRow as long
’貼り付け先行
lastrow = worksheets("Sheet2").range("G65536").end(xlup).offset(1).row
’貼り付け先列
c = 7 ’G列
for each h in worksheets("Sheet1").range("B2:D6") ’コピー元
worksheets("Sheet2").cells(lastrow, c).value = h.value
c = c + 1 ’右の列に
next
end sub
ご回答ありがとうございました。
どのコードが何のためのものか説明していただき、
大変勉強になりましたのでベストアンサーにさせていただきます。
皆様のご回答を参考に、
自分で調節しながら思い通りに表を作成することが出来ました。
No.3
- 回答日時:
bouheur様
おはようございます。
こんな例もいかがですか?
Option Explicit
Sub 転記()
Dim row1 As Long
Dim row2 As Long
If Cells(2, 7) <> "" Then
row2 = Cells(1, 7).End(xlDown).row + 1
Else
row2 = 2
End If
For row1 = 2 To 6
Range(Cells(row1, 2), Cells(row1, 4)).Copy Destination:=Cells(row2, 3 * row1 + 1)
Next row1
End Sub
No.2
- 回答日時:
こんばんは!
一例です。
↓の画像のように上側がSheet1で下側のSheet2にコピー&ペーストするようにしています。
尚、Sheet1は画像通りに規則正しく、3列のデータとします。
Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面に
↓のコードをコピー&ペーストしてマクロを実行してみてください。
Sub Sample1()
Dim i As Long, endRow As Long, wS1 As Worksheet, wS2 As Worksheet
Set wS1 = Worksheets("Sheet1")
Set wS2 = Worksheets("Sheet2")
endRow = wS2.Cells(Rows.Count, "B").End(xlUp).Row + 1
For i = 2 To wS1.Cells(Rows.Count, "A").End(xlUp).Row
wS1.Cells(i, "B").Resize(, 3).Copy wS2.Cells(endRow, 3 * (i - 1) - 1)
Next i
End Sub
こんな感じではどうでしょうか?m(_ _)m

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) コード名シートA列と集計シートA列のコードが一致したら、コード名シートA5からk12の範囲をコピーし 1 2022/08/29 23:46
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) VBAコードを張り付け後のエクセルの進め方 2 2023/02/07 18:24
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Visual Basic(VBA) VBA シート間の転記で、条件の追加コードの書き方について教えて下さい。 13 2023/02/26 09:31
- Visual Basic(VBA) 集計シートA列のコードと一致する右に並んだシート名(コード)の3行目から10行目をコピーして貼り付け 4 2022/08/18 15:24
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) vba 同じブック内での転記について 4 2023/01/15 14:42
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Microsoft Officeを2台目のPCに...
-
Microsoft365、ページ設定がで...
-
大学のレポート A4で1枚レポー...
-
快活CLUBについて 私用で使う書...
-
Office2021を別のPCにインスト...
-
libreoffice calcで行を挿入し...
-
エクセルで特定のセルの値を別...
-
office2019 のoutlookは2025年1...
-
エクセル:一定間隔で平均値を...
-
Excel テーブル内の空白行の削除
-
マクロ自動コピペ 貼り付ける場...
-
Teams内でショートカットって貼...
-
別シートの年間行事表をカレン...
-
Microsoft Formsの「個人情報や...
-
1つのPCに「Excel 2010」「Exc...
-
エクセルにリンクされるのをし...
-
【Excel VBA】PDFを作成して,...
-
パソコン画面の中の小さい画面...
-
outlookのメールが固まってしま...
-
マイクロソフト 一時使用コード...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCEL マクロ データが転記さ...
-
ExcelのVBAで最終行の下にコピ...
-
VBA繰り返し ワイルドカード
-
sheet間での転記エラー
-
特定のセルだけ結果がおかしい...
-
エクセルの複数シートの保護を...
-
前の(左隣の)シートを連続参...
-
別シート参照のセルをシート毎...
-
エクセルで前シートを参照して...
-
Excel、同じフォルダ内のExcel...
-
特定のシートの削除を禁止した...
-
EXCEL:同じセルへどんどん足し...
-
エクセル 計算式も入っていない...
-
Excelで金銭出納帳。繰越残高を...
-
複数シートの特定の位置に連番...
-
エクセルでファイルを開いたと...
-
Excel2007で、太字にした行のみ...
-
シートの保護のあとセルの列、...
-
Accessのスプレッドシートエク...
-
VBAで条件によりフォントサイズ...
おすすめ情報