1
D3:D12と言う列の10個のエントリの平均または合計または標準偏差または..を計算し、行をZ列まで入力する必要があります。 enter image description hereVBA:動的範囲のループを使用した水平および垂直移動
パート1: -
Sub hg()
Dim i As Long
Range("D13").Select
Do Until i = 20
i = i + 1
ActiveCell.FormulaR1C1 = "=AVERAGE(R[-10]C:R[-1]C)"
Cells(ActiveCell.Row, ActiveCell.Column + 1).Select
Loop
End Sub
この私がコード化されてきました。サイドの方法をドラッグするのは簡単な方法はありますか?
28行目、43行目の&で15行の違いがあるので、これをもう一度やり直す必要があります。
私は パート2を追加していると考えることができます: -
28行に指示するが、この行に沿って移入するために機能していないSub hg()
Dim i As Long
Range("D13").Select
Do Until i = 20
i = i + 1
ActiveCell.FormulaR1C1 = "=AVERAGE(R[-10]C:R[-1]C)"
Cells(ActiveCell.Row, ActiveCell.Column + 1).Select
Loop
Cells(ActiveCell.Row + 15, ActiveCell.Column - 20).Select
End Sub
。私は垂直移動を指示することができません。
私は深刻なコーダーではなく、学ぶことに非常に興味があります。垂直方向に配置するのを手伝ってください。オフセット
を使用でき
で15行をステッピング最終的なコードは、( サブHGである) 薄暗い私としてロング レンジ(「D13」 )i = 1 + 1 ActiveCell.FormulaR1C1 = "= AVERAGE(R [-10] C:R [-1] C)" Selection.Copy 範囲(選択、選択。 End(xlToRight))を選択します。 Selection.PasteSpecialペースト:= xlPasteFormulas、操作:= xlNone、_ SkipBlanks:= Falseを、トランスポーズ:あなたは暖かく避けるために奨励されている= Falseの 細胞(ActiveCell.Row、ActiveCell.Column + 1).Select 細胞(ActiveCell.Row + 15、4).Select ループ End Subの –
選択/選択/ ActiveXXXパターンは避け、完全修飾範囲参照を使用してください。さらに、コピー/ペーストは高価な操作であり、データや操作をほとんど行わなくてもそれを認識することはできませんが、値プロパティを使用して範囲間の値をコピーしたり、数式を直接書くことができます。私のコードを試してみてください – user3598756