これ何て呼びますか

下記のようなプログラム組んでいます。
Sub 張付()
Sheets("一覧表").Select
Dim i As Long
Dim ws1, ws2 As Worksheet
Set ws1 = Worksheets("一覧表")
Set ws2 = Worksheets("データー")
For i = 5 To ws2.Cells(Rows.Count, 1).End(xlUp).Row
ws1.Range("B5") = ws2.Cells(i, 2)    'セルB5に氏名を入力
ws1.Range("C5") = ws2.Cells(i, 3)    'セルC5に年齢を入力
ws1.Range("D5") = ws2.Cells(i, 4)    'セルD5に電話番号を入力
この後、 ws1.Range("B5")のB5をB6にまた、C5はC6に改行してそれぞれデーターを移していきたい
のですが、B5をB6に順次プラスする方法を教えて下さい。
よろしくお願いいたします。

A 回答 (2件)

方法1:



Sub 張付()
Dim i As Long
Dim ws1 as worksheet, ws2 As Worksheet ’初心者さんのよくある勘違い

Sheets("一覧表").Select
Set ws1 = Worksheets("一覧表")
Set ws2 = Worksheets("データー")
For i = 5 To ws2.Cells(Rows.Count, 1).End(xlUp).Row
ws1.cells(i, "B").value = ws2.Cells(i, 2).value    'セルBのiに氏名を入力
ws1.cells(i, "C").value = ws2.Cells(i, 3).value    'セルCのiに年齢を入力
ws1.cells(i, "D").value = ws2.Cells(i, 4).value    'セルDのiに電話番号を入力




方法2:
>B5をB6に順次プラスする方法

一個ずつちんたらやってく必要はない

Sub 張付()
Dim n As Long
Dim ws1 as worksheet, ws2 As Worksheet
Set ws1 = Worksheets("一覧表")
Set ws2 = Worksheets("データー")
n = ws2.Cells(Rows.Count, 1).End(xlUp).Row
ws1.Range("B5:B" & n).value = ws2.range("B5:B" & n).value    'セルB5以下に氏名を入力
ws1.Range("C5:C" & n).value = ws2.range("C5:C" & n).value    'セルC5以下に年齢を入力
ws1.Range("D5:D" & n).value = ws2.range("D5:D" & n).value    'セルD5以下に電話番号を入力


#コピー貼り付けても一緒。
    • good
    • 0
この回答へのお礼

keithin 様
回答ありがとうございました。
少ない行数で良いファイルができました。
今回は、方法1を使わせてもらいました。

お礼日時:2014/09/07 13:19

こんばんは!



ループさせる場合は

Sub Sample1()
Dim i As Long
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Set ws1 = Worksheets("一覧表")
Set ws2 = Worksheets("データー")
For i = 5 To ws2.Cells(Rows.Count, "B").End(xlUp).Row
With ws1.Cells(i, "B")
.Value = ws2.Cells(i, "B")
.Offset(, 1) = ws2.Cells(i, "C")
.Offset(, 2) = ws2.Cells(i, "D")
End With
Next i
End Sub

今回の場合、そっくりそのままコピー&ペーストでよさそうなので

Sub Sample2()
Dim lastRow As Long
Dim wS As Worksheet
Set wS = Worksheets("一覧表")
With Worksheets("データー")
lastRow = .Cells(Rows.Count, "A").End(xlUp).Row
Range(.Cells(5, "B"), .Cells(lastRow, "D")).Copy wS.Range("B5")
End With
End Sub

でも大丈夫だと思います。m(_ _)m
    • good
    • 0
この回答へのお礼

tom04 様
回答ありがとうございました。
また、エクセルの質問では、たびたび回答ありがとうございます。

お礼日時:2014/09/07 13:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!