データ転記についてご教示ください。 シートAAAのA4~H最終行にシートBBBのA2~H最終行の情報を転記したいのですが、BBBのタイトル行とデータ1行分しか転記されませんでした。

Visual Basic | Excel70閲覧xmlns="http://www.w3.org/2000/svg">50

ベストアンサー

1

1人がナイス!しています

ありがとうございます。 丁寧にご解説いただき大変たすかりました。 おかげで間違いだったところがよく理解できました。 おっしゃるようにコピーをした方が確実で無難でありました。 ありがとうございます。

ThanksImg質問者からのお礼コメント

皆様のおかげで問題も解決できました。 ありがとうございました。

お礼日時:10/21 22:21

その他の回答(3件)

1

Copy&Pasteで貼り付けると解りやすいかと。。。 Sub sample() With Worksheets("BBB") .Range("H4", .Cells(Rows.Count, "A").End(xlUp)).Copy End With Worksheets("AAA").Cells(Rows.Count, "A").End(xlUp).Offset(1).PasteSpecial xlPasteValues Application.CutCopyMode = False End Sub

1人がナイス!しています

0

変数LastRowが10だとして、 Sheets("AAA").Range("A4:H10").Value = Sheets("BBB").Range("A2:H10").Value になりますよね。 .Value = .Value は、同じ行数&同じ列数じゃないと不具合出ますよ。 多分こういう事がしたいのだと思いますが…。 Sub Sample() Dim LastRow As Long LastRow = Sheets("BBB").Cells(Rows.Count, 1).End(xlUp).Row With Sheets("BBB").Range("A2:H" & LastRow) Sheets("AAA").Range("A4").Resize(.Rows.Count, .Columns.Count).Value = .Value End With End Sub

ありがとうございます。 ご指摘のとおりです。「.Value = .Value」は行列が同じでないと まずいものだったのですね。性質を知らずに、ネットにあるものをそのまま拾ってしまいました。 丁寧に構文も掻いてくださり本当にありがとうございます。