#3
Post
by carmomile » Mon Feb 20, 2017 2:13 pm
ต่อไปอาจจะมีโรงงานเพิ่มมา ก็เลยอยากจะขอแนวทางเพิ่มเติมนะครับ หากมี โรงงานเพิ่มเติม ผมจะมีวิธีอื่น นอกจากการ record macro ใหม่ หรือไม่ครับ
***เพิ่มเติมผมควรเขียน code ยังไงให้การบันทึกชื่อไฟล์เป็นไปตามชื่อโรงงานครับ (ผมไม่ค่อยรู้จักคำสั่งในการใช้งานมากพอนะครับ) รบกวนพี่ๆด้วยครับ
คือผมลองทำโดยการ record macro ได้ตัวอย่างดังนี้ครับ
Sub Macro2()
'
' Macro2 Macro
'
'
Sheets("ฟอร์ม").Select
Sheets("ฟอร์ม").Copy
ActiveSheet.Range("$B$6:$T$6019").AutoFilter Field:=1, Criteria1:=Array( _
"1209", "1294", "1312", "1318", "1328", "="), Operator:=xlFilterValues
Rows("7:7").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Delete Shift:=xlUp
ActiveSheet.Range("$B$6:$T$129").AutoFilter Field:=1
Range("A7").Select
ActiveCell.FormulaR1C1 = "1"
Range("A8").Select
ActiveCell.FormulaR1C1 = "2"
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A129")
Range("A7:A129").Select
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ChDir "D:\save"
ActiveWorkbook.SaveAs Filename:= _
"D:\save\กระทบรับโอน1.xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
Windows("สรุปรับโอนBA1279_ล่าสุด.xls").Activate
Range("D30").Select
Sheets("ฟอร์ม").Select
Sheets("ฟอร์ม").Copy
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveSheet.Range("$B$6:$T$6019").AutoFilter Field:=1, Criteria1:=Array( _
"1064", "1065", "1294", "1312", "1318", "1328", "="), Operator:=xlFilterValues
Rows("7:7").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWindow.SmallScroll Down:=6
Application.CutCopyMode = False
Selection.Delete Shift:=xlUp
ActiveSheet.Range("$B$6:$T$446").AutoFilter Field:=1
Range("A7").Select
ActiveCell.FormulaR1C1 = "1"
Range("A8").Select
ActiveCell.FormulaR1C1 = "2"
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A446")
Range("A7:A446").Select
Range("D17").Select
ActiveWindow.SmallScroll Down:=0
ActiveWorkbook.SaveAs Filename:= _
"D:\save\กระทบรับโอน 2.xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
Windows("สรุปรับโอนBA1279_ล่าสุด.xls").Activate
End Sub