Page 1 of 1

การ run macro โดยใช้ auto fill ให้ถึงทัดสุดท้าย

Posted: Tue Feb 21, 2017 10:26 am
by lumi
เรียนสอบถามค่ะ

การใช้คำสั่ง record macro และใช้ autofill เมื่อมีข้อมูลเพิ่ม คำสั่งไปไม่ถึงบรรทัดสุดท้ายของข้อมูลแก้ไขอย่างไรคะ
เช่นเดิมมีข้อมูลใน Column A บรรทัดที่ 25 กด run macro เพื่อ copy column C2:H2 โดยใช้ autofill ข้อมูลจะลงมาครบ
แต่พอเดือนถัดมามีข้อมูลเพิ่มถึงบรรทัดที่ 36 กด run macro ข้อมูลใน Column C:H มาไม่ครบค่ะ ต้องแก้ไขตรงไหนคะ

Code: Select all

Sub AutoFill()
'
' AutoFill Macro
'
' Keyboard Shortcut: Ctrl+l
'
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlFixedWidth, _
        FieldInfo:=Array(Array(0, 1), Array(12, 1)), TrailingMinusNumbers:=True
    Range("C2:H2").Select
    Selection.AutoFill Destination:=Range("C2:H25")
    Range("C2:H25").Select
End Sub

Re: การ run macro โดยใช้ auto fill ให้ถึงทัดสุดท้าย

Posted: Tue Feb 21, 2017 11:04 am
by lumi
ขอส่ง file ตัวอย่างมาให้ดูค่ะ

Re: การ run macro โดยใช้ auto fill ให้ถึงทัดสุดท้าย

Posted: Wed Feb 22, 2017 12:02 am
by snasui
:D ตัวอย่าง Code ครับ

Code: Select all

Sub AutoFill()
'
' AutoFill Macro
'
' Keyboard Shortcut: Ctrl+l
'
    Dim lastRow As Long
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlFixedWidth, _
        FieldInfo:=Array(Array(0, 1), Array(12, 1)), TrailingMinusNumbers:=True
    lastRow = Range("a" & Rows.Count).End(xlUp).Row
    Range("C2:H2").Select
    Selection.AutoFill Destination:=Range("C2:H" & lastRow)
End Sub