Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows XP全般 : Excel 2013)
関数のコピーについて教えてください
投稿日時: 17/08/23 10:49:58
投稿者: どすこい

@A1のセルに「=SUBTOTAL(3,A3:A6)」の関数が入っています。この時点でA1行はA1セル以外、空白です。
Aその関数を毎回手動で右方向にドラッグし、1つ下の行(A2行)に値が入っている最終列(最終列より右は絶対に全て空白)までドラッグしています。
※A2行には、D列まで値が入っている時もあれば、AX列まで値が入っていることもあり、可変です。
Aの作業をマクロで自動化させたいのですが、どのようなコードを書けばできるか教えてください。
 
初心者ですが一旦、以下のようにコードを書きました。
が、「A1:M1」と範囲を指定しているので、毎回この範囲までしか関数がコピーされず、
どのように書き直したらよいか教えていただきたいです。
 
Sub test()
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "=SUBTOTAL(3,R[2]C:R[5]C)"
    Range("A1").Select
    Selection.AutoFill Destination:=Range("A1:M1"), Type:=xlFillDefault
    Range("A1:M1").Select
    Range("M2").Select
End Sub

回答
投稿日時: 17/08/23 11:34:21
投稿者: bi

たとえば
 

Sub Macro1()
    
    Dim c As Long
    
    c = Cells(2, Columns.Count).End(xlToLeft).Column
    Range("A1").Copy Range(Cells(1, 2), Cells(1, c))

End Sub

ですかね?

投稿日時: 17/08/23 11:56:09
投稿者: どすこい

bi様
 
教えていただきありがとうございます!!!!完ぺきな動きができました。
すごく助かりました。