合計や平均など、数値の列の下に数式を配置するマクロを作成しようとしています。私はこれを思いついた:
Sub foo()
ActiveSheet.Range(ActiveCell, ActiveCell.End(xlDown)).Select
ActiveCell.End(xlDown).Offset(1) = Application.WorksheetFunction.Sum(Selection)
End Sub
この関数は合計を見つけ、一番上を選択したデータの列の最後の数字の下に配置します。それは機能しますが、動的ではありません。新しい値は単なる値です。列の数値の1つを変更しても、合計を保持するセルは変更されません。だから私はセルに実際の機能を配置しようとしています。これは私が現在持っているものです:
Sub foo()
ActiveCell.Offset(1).Formula = "=Sum(ActiveCell:ActiveCell.End(xlUp))"
End Sub
今回は一番下から始めました。現在、アクティブ セルは列の最後の値になるように意図されています。エラーは検出されませんが、出力は「#NAME」と悪いです。引用符で遊んでみましたが、何も得られませんでした。例えば:
Sub foo()
ActiveCell.Offset(1).Formula = "=Sum(" & ActiveCell:ActiveCell.End(xlUp) & ")"
End Sub
何か案は?