Tạo nút Save As trong Excel

Liên hệ QC

tacdangnguoirung

Thành viên mới
Tham gia
26/7/07
Bài viết
46
Được thích
12
Chào các anh chị trong diễn đàn!
Em có biết chút ít về excel (chẳng đến đâu) gần đây đang viết một chương trình liên quan đến một vấn đề mà không tự giải quyết được rất mong nhận được sự giúp đỡ từ các anh chị trong diễn đàn.
Trong một cửa sổ bảng tính ex em muốn viết một nút lệnh giống như nút Sava As của excel. Nghĩa là cứ mỗi lần click vào nó thì chương excel sẽ hiện ra một cửa sổ để cho người dùng đặt tên file và lưu với tên khác.
Vậy đó các bác à! thú thực là em không biết làm thế nào ! các bác giúp em với nhé! Cảm ơn nhiều nhiều !
 
Sao ko làm như bạn viendo nói, nghĩa là bấm phím F12 ???
Còn thích code thì.. cũng vậy, 1 lệnh duy nhất:
Application.SendKeys ("{F12}")
tacdangnguoirung đã viết:
Vậy nếu đệ muốn sent một tổ hợp phím có được không ạ! nếu có thì viết thế nào hả Huynh Anh Tuấn
Tất nhiên là dc nếu như bình thường bạn vẩn bấm dc tổ hợp phím ấy....
Bạn mở file Excel mới, bấm Alt + F11 để vào của sổ VBE.. Tiếp theo vào menu Help\Microsoft Visual Basic help rồi gỏ vào từ khóa Sendkeys... Nó sẽ cho bạn biết cách thức sử dụng lệnh này ... (tôi cũng làm vậy mới biết mà trả lời cho bạn đấy)
ANH TUẤN
 
Chỉnh sửa lần cuối bởi điều hành viên:
tacdangnguoirung đã viết:
Vậy nếu đệ muốn sent một tổ hợp phím có được không ạ! nếu có thì viết thế nào hả Huynh Anh Tuấn
Thì bạn gán Shortcut Key cho Macro mà bạn mới tạo ra.
 
Thật là tuyệt vời đó ! Cám ơn huynh nhiều nhiều nhé Huynh ANH TUẤN!

Huynh Anh Tuấn cho đệ hỏi thêm một tí nữa nhé!!
Nếu đệ chỉ muốn lưu một sheet thôi còn các sheet khác trong book không lưu vào có được không ạ!
 
Chỉnh sửa lần cuối bởi điều hành viên:
tacdangnguoirung đã viết:
Huynh Anh Tuấn cho đệ hỏi thêm một tí nữa nhé!!
Nếu đệ chỉ muốn lưu một sheet thôi còn các sheet khác trong book không lưu vào có được không ạ!
Ko có vụ đó đâu bạn ơi... Đã lưu là lưu hết, trừ phi bạn cắt sheet ấy ra 1 file riêng biệt... (nhưng khi cắt như thế thì coi chừng các công thức liên kết từ sheet này đến sheet khác sẽ bị ảnh hưởng)
Mến
ANH TUẤN
 
Vậy đệ muốn copy (chỉ nội dung của sheet đó) ra files khác thì có được không Huynh, nếu được thì làm thế nào hả Huynh. Ý đệ muốn copy nội dung thôi là để cho nó khỏi ảnh hưởng đến các liên kết từ những sheet khác đó Huynh à!
 
tacdangnguoirung đã viết:
Vậy đệ muốn copy (chỉ nội dung của sheet đó) ra files khác thì có được không Huynh, nếu được thì làm thế nào hả Huynh. Ý đệ muốn copy nội dung thôi là để cho nó khỏi ảnh hưởng đến các liên kết từ những sheet khác đó Huynh à!
Thì bạn Click chuột phải lên Sheet Tab, sẽ thấy có mục "Move or Copy"... nó cho phép nhân bản sheet này thành 1 sheet mới (nằm trong cùng file) hoặc copy hẳn sang file mới... thí nghiệm đi
ANH TUẤN
 
Ý đệ là muốn viết một đoạn code gán nó vào một nút lệnh Huynh à! đoạn code này sẽ copy nội dung một sheet hoặc một vùng chọn từ bảng tính cũ sang một bảng tính mới rồi lưu bảng tính mới với tên người dùng chọn đó Huynh à! (Làm như vậy cũng giống như viết lệnh lưu một sheet đó Huynh). Nếu Huynh biết thì chỉ giùm cho đệ với nhé! Cám ơn Huynh nhiều!
 
Bạn thử tự Record lấy 1 macro quá trình ấy xem thế nào trước đã nhé
ANH TUẤN
 
Để hiện bảng Save As, bạn có thể sử dụng dòng lệnh sau:

Application.Dialogs(xlDialogSaveAs).Show

Cách này hay hơn phương thức SenKeys vì có thể lấy và điều khiển file sau khi đã lưu file.
 
Đệ đã recode macro và kết hợp thêm một số dòng code như các Huynh nhắc nhở. Bây giờ thì kết quả như mong muốn rồi các Huynh à! Cám ơn các Huynh thật nhiều!!!
"sống ở trên đời cần có một tấm lòng...để cho gió cuốn đi"
 
Bạn có thể gửi file mình tham khảo học hỏi chút được không? Cảm ơn.
 
Lần chỉnh sửa cuối:
tacdangnguoirung đã viết:
Đệ đã recode macro và kết hợp thêm một số dòng code như các Huynh nhắc nhở. Bây giờ thì kết quả như mong muốn rồi các Huynh à! Cám ơn các Huynh thật nhiều!!!
"sống ở trên đời cần có một tấm lòng...để cho gió cuốn đi"
Chú ý khi bạn record 1 macro có chức năng Save as, sẽ dc 1 code dạng:
PHP:
Sub Macro1()
  ActiveWorkbook.SaveAs Filename:="....................."
End Sub
Vậy nếu bạn gõ đường dẩn chứa file vào 1 cell và tên file vào 1 cell nữa, ví dụ tôi gõ:
A1 = D:\Temp
A2 = Test1.xls
Tức ngầm hiểu rằng bạn muốn save file thành tên Test1.xls trong thư mục D:\Temp... vậy có thể chỉnh lại code:
PHP:
Sub Macro1()
  ActiveWorkbook.SaveAs Filename:=Range("A1").Value & "\" & Range("A2").Value
End Sub
Từ đây muốn lưu ở đâu, tên gì chỉ việc sửa vào cell A1 và A2 rồi chạy code là xong!
ANH TUẤN
 
Lam the nao de Hien bang in ra

Giong nhu cau hoi cua mot ban Save as. Vay lam sao de hien form in ra ?(nhu khi ta nhan Ctrl P vay)
 
Web KT

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

Back
Top Bottom