0

私は初心者の VBA 愛好家であり、式が本のすべての行に適用されることを確認する方法がわからないため、以下の式について助けてください。ご覧のとおり、実際のコードのコピーを開始しましたが、これを最大 100 行で行う必要があるため、これは手動で行いすぎます。

ありがとう

Sub Charts()
    ' Charts Macro
    ' Run charts
    Range("D7").Value = Range("D11")
    Range("E7:G7").Select
    Selection.Copy
    Range("E11").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    Range("D7").Value = Range("D12")
    Range("E7:G7").Select
    Selection.Copy
    Range("E12").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("D7").Value = Range("D13")
    Range("E7:G7").Select
    Selection.Copy
    Range("E13").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("D7").Value = Range("D14")
    Range("E7:G7").Select
    Selection.Copy
    Range("E14").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End Sub
4

1 に答える 1

1

これはあなたがしようとしていることですか?

Option Explicit

Sub Charts()
    Dim i As Long

    '~~> Change this to the relevant sheet
    With Sheets("Sheet1")
        For i = 11 To 14 '<~~ Change 14 to whatever row you want to go to
            .Range("D7").Value = .Range("D" & i).Value

            .Range("E7:G7").Copy
            .Range("E" & i).PasteSpecial Paste:=xlPasteValues, _
            Operation:=xlNone, SkipBlanks:=False, Transpose:=False
        Next i
    End With
End Sub
于 2012-05-15T19:09:36.423 に答える