:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

save ไฟล์ backup

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

save ไฟล์ backup

#1

Post by mr.zatan »

ต้องการให้เมื่อเราเซฟไฟล์งาน.
1. ให้เซฟอีกไฟล์นึงไว้อัตโนมัติ
2. และบันทึกตั้งแต่ Row ที่ 3 เป็นตั้นไป

รบกวนด้วยครับ.

Code: Select all


Sub SaveCopyAs()
ActiveWorkbook.SaveCopyAs "C:\Users\servers\Desktop\Print\backup.xlsm"
End Sub


Last edited by mr.zatan on Sun Aug 15, 2021 6:33 pm, edited 1 time in total.
User avatar
snasui
Site Admin
Site Admin
Posts: 30799
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: save ไฟล์ blackup

#2

Post by snasui »

:D ตัวอย่างการบันทึกไปเป็นอีกไฟล์หนึ่งอัตโนมัติดูตาม Link นี้ครับ http://snasui.com/viewtopic.php?p=107312#p107315

ส่วนการบันทึกตั้งแต่บรรทัดนั้นบรรทัดนี้คงต้องเขียน Code เก็บค่าบรรทัดอื่นเอาไว้ที่อื่นก่อน เช่นเก็บไว้ในชีตอื่น ไฟล์อื่น เมื่อ Save ไปเป็นไฟล์สำรองแล้วค่อยนำค่านั้นกลับมาวางใหม่ ฯลฯ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#3

Post by mr.zatan »

ก็ยังไม่ save ให้เองอยู่ดีครับ ต้องกด run ถึงจะทำงาน

Code: Select all


Sub SaveBackup()
Dim D As String, FSO As Object
    Set FSO = CreateObject("Scripting.FileSystemObject")
    D = "backup.xlsm"
    ActiveWorkbook.Save
    FSO.CopyFile ActiveWorkbook.FullName, "C:\Users\servers\Desktop\Print\" & D
End Sub

User avatar
snasui
Site Admin
Site Admin
Posts: 30799
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: save ไฟล์ blackup

#4

Post by snasui »

:D คำว่า Save ให้เองมันจะต้องมีเหตุการณ์ (Event) ที่จะใช้ตรวจสอบเพื่อให้ Code ทำงานเมื่อเกิดเหตุการณ์นั้น เช่นการเลือกเซลล์ การเปลี่ยนค่าในเซลล์ การเลือกชีต การ Save การปิดไฟล์ ฯลฯ ไม่ทราบว่าต้องการให้ Save Backup เองในจังหวะไหนหรือเกิดเหตุการณ์ใดครับ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#5

Post by mr.zatan »

snasui wrote: Sun Aug 15, 2021 7:05 pm :D คำว่า Save ให้เองมันจะต้องมีเหตุการณ์ (Event) ที่จะใช้ตรวจสอบเพื่อให้ Code ทำงานเมื่อเกิดเหตุการณ์นั้น เช่นการเลือกเซลล์ การเปลี่ยนค่าในเซลล์ การเลือกชีต การ Save การปิดไฟล์ ฯลฯ ไม่ทราบว่าต้องการให้ Save Backup เองในจังหวะไหนหรือเกิดเหตุการณ์ใดครับ
save backup ตอนกด save ไฟล์ครับ (อันนี้ืทำได้แล้วครับ) เหลือแต่เรื่อง save row ครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 30799
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: save ไฟล์ blackup

#6

Post by snasui »

:D ไม่เข้าใจคำว่า Save Row ช่วยทำไฟล์ตัวอย่างพร้อมแสดงให้เห็นว่าเดิมเป็นแบบไหน และต้องการให้แสดงผลลัพธ์เป็นแบบไหน ถ้าเป็นไปตามที่ผมเขียนแนะนำไว้แล้วจะต้องเขียน Code มาก่อน ติดตรงไหนค่อยนำมาถามกันต่อครับ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#7

Post by mr.zatan »

code นี้น่าจะใกล้เคียง

ต้องการลบ row ที่ A1 , A2 (2 แถวบนสุดนั้นแหละครับ)

Code: Select all

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

    Dim ws As Worksheet, SaveToDirectory As String

    SaveToDirectory = "C:\Users\servers\Desktop\Print\"

    Application.DisplayAlerts = False

    For Each ws In ThisWorkbook.Worksheets

        ws.Copy

        With ActiveWorkbook

            .Sheets(1).Cells(1).EntireRow.Delete shift:=xlUp

            .SaveAs Filename:=SaveToDirectory & .Sheets(1).Name & ".csv", FileFormat:=xlCSVMSDOS, CreateBackup:=False

            .Close SaveChanges:=True

        End With

      Next ws

      Application.DisplayAlerts = True
End Sub

You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30799
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: save ไฟล์ blackup

#8

Post by snasui »

:D ตัวอย่างการลบ 2 บรรทัดแรกครับ

Code: Select all

'Other code
With ActiveWorkbook
    Sheets(1).Range("a1:a2").EntireRow.Delete shift:=xlUp
'Other code
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#9

Post by mr.zatan »

ขอบคุณครับ

พอดีว่าผมจะเอาไป import ใส่ mysql เลยจะลบบรรทัดที่ไม่จำเป็นออก
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#10

Post by mr.zatan »

snasui wrote: Sun Aug 15, 2021 8:08 pm :D ตัวอย่างการลบ 2 บรรทัดแรกครับ

Code: Select all

'Other code
With ActiveWorkbook
    Sheets(1).Range("a1:a2").EntireRow.Delete shift:=xlUp
'Other code
Sheets(1) อันนี้ใช่ชื่อ sheet ไหมครับ เพราะผมลองเปลี่ยนเป็นชื่อ worksheet ที่ต้องการแล้ว error
User avatar
logic
Gold
Gold
Posts: 1507
Joined: Thu Mar 18, 2010 1:57 pm
Excel Ver: 365

Re: save ไฟล์ blackup

#11

Post by logic »

เลข 1 เป็นเลขลำดับของชีต sheets(1) ก็คือชีตลำดับที่ 1 ครับ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#12

Post by mr.zatan »

ถ้าต้องการระบุชื่อ sheet สามารถทำได้ไหมครับ
User avatar
logic
Gold
Gold
Posts: 1507
Joined: Thu Mar 18, 2010 1:57 pm
Excel Ver: 365

Re: save ไฟล์ blackup

#13

Post by logic »

ใส่ชื่อชีตแทนเลข 1 เข้าไปเลยครับ ตัวอย่าง Sheets("xyz") อะไรแบบนี้ครับ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#14

Post by mr.zatan »

ขอบคุณครับ

เจออีกปัญหาครับ

- ถ้ามีมากกว่า 1 sheet เกิด error

Run-time error '9':
subscript out of range

Code: Select all

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

    Dim ws As Worksheet, SaveToDirectory As String

    SaveToDirectory = "C:\Users\servers\Desktop\Print\"

    Application.DisplayAlerts = False

    For Each ws In ThisWorkbook.Worksheets

       ws.Copy

        With ActiveWorkbook

            .Sheets("MT").Range("a1:a2").EntireRow.Delete shift:=xlUp

            .SaveAs Filename:=SaveToDirectory & .Sheets("MT").Name & ".csv", FileFormat:=xlCSVMSDOS, CreateBackup:=False

            .Close SaveChanges:=True

        End With

      Next ws

      Application.DisplayAlerts = True
End Sub

You do not have the required permissions to view the files attached to this post.
User avatar
logic
Gold
Gold
Posts: 1507
Joined: Thu Mar 18, 2010 1:57 pm
Excel Ver: 365

Re: save ไฟล์ blackup

#15

Post by logic »

ใช้โค้ดวนลูปให้คัดลอกชีตไปสร้างเป็นไฟล์ใหม่ แต่ละชีตชื่อไม่เหมือนกันแต่ไปใส่ให้มันเป็นชื่อเดิม ๆ ก็เกิด Error อยู่แล้วครับ

เวลาคัดลอกชีตไปใช้ มันก็เป็นชีตแรกของไฟล์ใหม่ สังเกตว่าอาจารย์ใช้เป็น Sheets(1) มันคือชีตที่ 1 ของไฟล์ใหม่ และมันก็ง่ายดีอยู่แล้ว ไม่ต้องไปสนใจว่าชื่ออะไร เขียนแบบนี้แล้วมัน Error แบบไหนหรือครับ 🤔
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#16

Post by mr.zatan »

ผมต้องการแค่ sheet ("MT") ครับ sheet อื่นๆๆไม่ต้อง copy
User avatar
snasui
Site Admin
Site Admin
Posts: 30799
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: save ไฟล์ blackup

#17

Post by snasui »

:D ต้องการแค่ชีต MT สามารถปรับ Code เป็นด้านล่างครับ

Code: Select all

'Other code
'    For Each ws In ThisWorkbook.Worksheets
'        ws.Copy
    ThisWorkbook.Worksheets("MT").Copy
    With ActiveWorkbook
        .Sheets("MT").Range("a1:a2").EntireRow.Delete shift:=xlUp
        .SaveAs Filename:=SaveToDirectory & .Sheets("MT").Name & ".csv", FileFormat:=xlCSVMSDOS, CreateBackup:=False
        .Close SaveChanges:=True
    End With
'      Next ws
'Other code
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#18

Post by mr.zatan »

sheet อื่นๆๆเด้งมาเต็ม Taskbar เลยครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 30799
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: save ไฟล์ blackup

#19

Post by snasui »

:D ผมทดสอบแล้วไม่พบปัญหาใด กรุณาแนบไฟล์ล่าสุดพร้อมแสดงให้เห็นว่าเกิดปัญหาตรงไหน อย่างไร เพื่อนสมาชิกจะได้ช่วยดูให้ได้ครับ
User avatar
mr.zatan
Bronze
Bronze
Posts: 305
Joined: Sun Sep 05, 2010 8:31 am
Excel Ver: 2016
Contact:

Re: save ไฟล์ blackup

#20

Post by mr.zatan »

ได้แล้วครับ ขอบคุณครับ
Post Reply