Page 1 of 1

Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

Posted: Mon Mar 26, 2018 1:48 pm
by yodpao.b
- Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4
CaptureA1.JPG
ขั้นตอน
1.สร้างไฟล์ใหม่
2.SAVE ไฟล์ในชื่อที่อยู่ในเซล B4

Code: Select all

Sub Macro6()
    Workbooks.Add
    ActiveWorkbook.SaveAs Filename:="D:\Project_EERS\book3.xlsx", FileFormat _
        :=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWorkbook.Close
End Sub
ต้องการให้เวลา save ให้ไปอยู่ใน D:\Project_EERS\ และใช้ชื่อในเซล B4 ครับ
(ผมไม่รู้ว่าจะเขียนอย่างไรให้มันไปมองในสมุดงาน newproit2 ,Sheet1 ,เซลB4 ครับ)

Re: Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

Posted: Mon Mar 26, 2018 2:41 pm
by puriwutpokin
yodpao.b wrote: Mon Mar 26, 2018 1:48 pm - Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

CaptureA1.JPG
ขั้นตอน
1.สร้างไฟล์ใหม่
2.SAVE ไฟล์ในชื่อที่อยู่ในเซล B4

Code: Select all

Sub Macro6()
    Workbooks.Add
    ActiveWorkbook.SaveAs Filename:="D:\Project_EERS\book3.xlsx", FileFormat _
        :=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWorkbook.Close
End Sub
ต้องการให้เวลา save ให้ไปอยู่ใน D:\Project_EERS\ และใช้ชื่อในเซล B4 ครับ
(ผมไม่รู้ว่าจะเขียนอย่างไรให้มันไปมองในสมุดงาน newproit2 ,Sheet1 ,เซลB4 ครับ)
ตัวอย่างโค้ดครับ

Code: Select all

Sub Macro6()
 Dim xlsName As String
 xlsName = Sheets("Sheet1").Range("b4")
    Workbooks.Add
    ActiveWorkbook.SaveAs Filename:="D:\Project_EERS\" & xlsName & ".xlsx", FileFormat _
        :=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWorkbook.Close
End Sub

Re: Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

Posted: Mon Mar 26, 2018 4:13 pm
by yodpao.b
ขอบคุณครับ code ใช้งานได้ครับ
แต่ว่า บรรทัดล่างนี้เกียวด้วยไหมครับ
CaptureA2.jpg

Re: Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

Posted: Mon Mar 26, 2018 4:27 pm
by puriwutpokin
yodpao.b wrote: Mon Mar 26, 2018 4:13 pm ขอบคุณครับ code ใช้งานได้ครับ
แต่ว่า บรรทัดล่างนี้เกียวด้วยไหมครับ
CaptureA2.jpg
ไม่เกี่ยวครับ ผมลงไว้เวลาที่มีการใช้ Array จะได้เตือนว่าควรต้องกด ตามนี้ครับ

Re: Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

Posted: Mon Mar 26, 2018 4:43 pm
by yodpao.b
ขออีกคำถามครับ
ในระหว่างการ Save นั้นสามารถตั้งชื่อไฟล์เองได้อัตโนมัติ
คำถาม
ถ้าตอน SAVE ชื่อไฟล์นั้น สามารถสั่งให้ตั้งชื่อโฟดเดอร์ แล้วจึงค่อย Save ลงในโฟดเดอร์ที่ตั้งใหม่ได้ไหมครับ
(โฟดเดอร์และชื่อไฟล์ชื่อเดียวกันครับ)

code ที่ผมใช้อยู่ใช้ไม่ได้ครับ

Code: Select all

Sub MacroSaveAs_Filename()
 Dim xlsName As String
 Dim folderName As String
 xlsName = Sheets("Sheet1").Range("b4")
 folderName = Sheets("Sheet1").Range("b4")
    Workbooks.Add
    ActiveWorkbook.SaveAs Filename:="D:\Project_EERS\" & folderName & "\" & xlsName & ".xlsx", FileFormat _
        :=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWorkbook.Close
End Sub

Re: Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

Posted: Mon Mar 26, 2018 5:11 pm
by puriwutpokin
ปรับตามนี้ครับ

Code: Select all

Sub MacroSaveAs_Filename()
 Dim xlsName As String
 Dim folderName As String
 xlsName = Sheets("Sheet1").Range("b4")
 folderName = Sheets("Sheet1").Range("b4")
MkDir "D:\MyData\TK\POS\" & folderName
    Workbooks.Add
    ActiveWorkbook.SaveAs Filename:="D:\Project_EERS\" & folderName & "\" & xlsName & ".xlsx", FileFormat _
        :=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWorkbook.Close
End Sub

Re: Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

Posted: Mon Mar 26, 2018 6:29 pm
by puriwutpokin
แก้ไขใหม่ครับ

Code: Select all

Sub MacroSaveAs_Filename()
 Dim xlsName As String
 Dim folderName As String
 xlsName = Sheets("Sheet1").Range("b4")
 folderName = Sheets("Sheet1").Range("b4")
MkDir "D:\Project_EERS\" & folderName
    Workbooks.Add
    ActiveWorkbook.SaveAs Filename:="D:\Project_EERS\" & folderName & "\" & xlsName & ".xlsx", FileFormat _
        :=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWorkbook.Close
End Sub

Re: Save แล้วให้เปลี่ยนชื่อตามข้อความในเซล B4

Posted: Mon Mar 26, 2018 10:50 pm
by yodpao.b
พรุ่งนี้จะรีบไปแก้ที่ทำงานครับ
ขอบคุณครับ