Nhờ anh chị trợ giúp về code save as (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

kawaicandy

Thành viên chính thức
Tham gia
2/4/11
Bài viết
69
Được thích
9
Chào các anh/chị trên diễn đàn
Tình hình là em có 1 đoạn code dùng để save as 1 file excel.
Thao tác là khi ta Click button thì nó sẽ thực hiện 1 thao tác và hiện ra bảng save as, nếu ta click "OK" thì nó sẽ lưu sang file với tên mới, công việc sẽ như ta mong muốn. Tuy nhiên khi ta click "Cancel" thì thao tác đầu tiên nó cũng thực hiện nhưng nhưng ko lưu lại file.
Vậy vấn đề ở đây là em muốn khi ta click vào "Cancel" trong bảng save as thì thao tác đầu tiên cũng ko thực hiện, hay nói cách khác là ko có j xảy ra cả như file ở trạng thái ban đầu.
Em xin cảm ơn
 

File đính kèm

Mình chưa hiểu ý của bạn lắm, vì bạn chỉ saveas file thôi, nên khi nhấn "Cancel" thì file vẫn như ban đầu mà, có gì khác đâu
 
Upvote 0
Dạ tại trc khi thủ tục hiện bảng save as thì nó đã thực hiện 1 code do em chèn vào trc ạ. Chẳng hạn như sheet"...".select.
 
Upvote 0
Hi. Bạn thêm đoạn "Sheet("menu").select" vào sau end if xem. :D
 
Upvote 0
Cái đó em cũng làm rồi. Nhưng cảm giác bản chất vấn đề nó ko được logic cho lắm. Thực chất của vấn đề là tạo 1 file mới bằng cách save as ra 1 tên mới với 1 diện mạo mới :D. Nếu ko có cách khắc phục được chắc phải đưa ra sau end with vậy.
Còn nếu em muốn trong bảng save as chỗ file name luôn là 1 tên cố định (ví dụ "DuToan1" chẳng hạn) và save as type luôn luôn là excel 97-2003 workbook thì không biết có cách nào ko ạ.
Cảm ơn anh đã giúp đỡ
 
Upvote 0
Cái đó em cũng làm rồi. Nhưng cảm giác bản chất vấn đề nó ko được logic cho lắm. Thực chất của vấn đề là tạo 1 file mới bằng cách save as ra 1 tên mới với 1 diện mạo mới :D. Nếu ko có cách khắc phục được chắc phải đưa ra sau end with vậy.
Còn nếu em muốn trong bảng save as chỗ file name luôn là 1 tên cố định (ví dụ "DuToan1" chẳng hạn) và save as type luôn luôn là excel 97-2003 workbook thì không biết có cách nào ko ạ.
Cảm ơn anh đã giúp đỡ
Bạn tham khảo code này
PHP:
Sub SaveFileAs()
   ActiveSheet.SaveAs ThisWorkbook.Path & "\test1", 18 'save file as .xls format
   ActiveWorkbook.SaveAs ThisWorkbook.Path & "\test4", 50 'save file as .xlsb format
   ActiveWorkbook.SaveAs ThisWorkbook.Path & "\test2", 51 'save file as .xlsx format
   ActiveWorkbook.SaveAs ThisWorkbook.Path & "\test3", 52 'save file as .xlsm format
End Sub
 
Upvote 0
Ý em không phải là ép buộc nó vào 1 cái tên file nhất định. Tức là thủ tục vẫn là hiện bảng save as nhưng trong đấy tại chỗ file name thì nó sẽ mặc định tên "DuToan1" (người dùng không thích có thể đổi tên khác) và tai save as type thì luôn mặc định là excel 97-2003 (sợ nhiều người không biết lưu sang .xlsx sẽ ko chạy được macro)
Em cảm ơn
 
Upvote 0
Bạn tham khảo code này
PHP:
Sub SaveFileAs()
   ActiveSheet.SaveAs ThisWorkbook.Path & "\test1", 18 'save file as .xls format
   ActiveWorkbook.SaveAs ThisWorkbook.Path & "\test4", 50 'save file as .xlsb format
   ActiveWorkbook.SaveAs ThisWorkbook.Path & "\test2", 51 'save file as .xlsx format
   ActiveWorkbook.SaveAs ThisWorkbook.Path & "\test3", 52 'save file as .xlsm format
End Sub
Có cách nào lưu file dưới tên hiện hành thay vì tên là "test1", "test2",... không ạ
Ví dụ như file đang mở là abc.xls dùng code phát nó tự lưu thành abc.xlsx.
Em cảm ơn
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom