Tạo sheet mới tự động, đổi tên và cập nhật thông tin theo địa chỉ ô

Liên hệ QC

nguyenacc_audit

A demo is worth a thousand words
Tham gia
3/7/18
Bài viết
37
Được thích
22
Giới tính
Nam
Nghề nghiệp
Anh nghèo không có môtô, Chỉ có xe đạp thô sơ nhất làng.
Em chào các Anh,Chị,

Em muốn nhờ các anh chị giúp đỡ một vẫn đề như sau ạ,

Em có 1 file excel gồm có 2 sheet chính:
+ Sheet 1: chứa thông tin nguồn
+ Sheet 2: Là 1 file Biên bản.

Em muốn tạo ra 1 nút để sau khi click vào thì sẽ copy sheet2 ( sheet biên bản ) và đổi tên sheet theo tên file ở ô G2 và tên file tự động cập nhật không bị trùng với tên file của sheet trước đó.

* Hiện tại em đang dùng 2 nút với 2 code sau:
1.
Sub Test_addnewsheet()
ActiveSheet.Copy After:=Worksheets(Worksheets.Count)
End Sub

2.
Sub Test_RenameSheet()
ActiveSheet.Name = Range("G2")
MsgBox " doi ten sheet thanh cong"
End Sub

* Vấn đề em đang gặp phải:
Sheet mới tạo ra lấy thông tin từ sheet trước đó nên khi dùng nút thứ 2 để đổi tên sheet thì bị lỗi do trùng tên file. Phải thực hiện đổi tên phải thủ công ở ô G1 ( Tên file ở ô G2 tham chiếu từ ô G1).

* Nhờ các Anh,Chị giúp đỡ với ạ!
Em cảm ơn,




1590475878684.png
 

File đính kèm

  • TestCodeTaoSheetVaDoiTen.xlsm
    23.7 KB · Đọc: 10
  • 1590475376072.png
    1590475376072.png
    185.1 KB · Đọc: 4
Lần chỉnh sửa cuối:
Chào bạn, bạn có thể nói rõ hơn được không. Mình đọc đi đọc lại vẫn chưa hiểu í bạn á. :D
Mình đang muốn hỏi nếu trường hợp trùng tên thì bạn muốn code chạy như thế nào?
VD như file của bạn: Bạn đã có 1 Sheet tên Table 4_D004 rồi, bạn nhấn nút 1 -> Tạo Sheet Mới -> Nút 2 đổi tên = tên ô G2
Nếu trùng thì bỏ qua k tạo nữa. hay cho ô C2 chạy tiếp file D005.
 
Upvote 0
Em chào các Anh,Chị,

Em muốn nhờ các anh chị giúp đỡ một vẫn đề như sau ạ,

Em có 1 file excel gồm có 2 sheet chính:
+ Sheet 1: chứa thông tin nguồn
+ Sheet 2: Là 1 file Biên bản.

Em muốn tạo ra 1 nút để sau khi click vào thì sẽ copy sheet2 ( sheet biên bản ) và đổi tên sheet theo tên file ở ô G2 và tên file tự động cập nhật không bị trùng với tên file của sheet trước đó.
.....................................
* Nhờ các Anh,Chị giúp đỡ với ạ!
Em cảm ơn,
Góp ý cho bạn:
1/ Theo tôi thì Sheet1 đã chứa dữ liệu rồi muốn làm cái gì đó thì dựa vào dữ liệu của sheet này chứ không nên Add sheet và đặt tên làm gì cho tốn công vô ích.
2/ Muốn sheet và đặt tên hàng loạt thì vào Sheet1 nối cột cột A và B vào cột C rồi dựa vào cột C để Tách sheet.
3/ Do Sheet1 có dữ liệu sơ sài và Sheet2 không có nội dung gì khác nên chẳng hiểu bạn muốn làm cái gì nên tôi chỉ góp ý 1/ và 2/. Còn có phát sinh cái gì nữa thì sẽ góp ý tiếp.
 
Upvote 0
Em chào các Anh,Chị,

Em muốn nhờ các anh chị giúp đỡ một vẫn đề như sau ạ,

Em có 1 file excel gồm có 2 sheet chính:
+ Sheet 1: chứa thông tin nguồn
+ Sheet 2: Là 1 file Biên bản.

Em muốn tạo ra 1 nút để sau khi click vào thì sẽ copy sheet2 ( sheet biên bản ) và đổi tên sheet theo tên file ở ô G2 và tên file tự động cập nhật không bị trùng với tên file của sheet trước đó.

* Hiện tại em đang dùng 2 nút với 2 code sau:
1.
Sub Test_addnewsheet()
ActiveSheet.Copy After:=Worksheets(Worksheets.Count)
End Sub

2.
Sub Test_RenameSheet()
ActiveSheet.Name = Range("G2")
MsgBox " doi ten sheet thanh cong"
End Sub

* Vấn đề em đang gặp phải:
Sheet mới tạo ra lấy thông tin từ sheet trước đó nên khi dùng nút thứ 2 để đổi tên sheet thì bị lỗi do trùng tên file. Phải thực hiện đổi tên phải thủ công ở ô G1 ( Tên file ở ô G2 tham chiếu từ ô G1).

* Nhờ các Anh,Chị giúp đỡ với ạ!
Em cảm ơn,




View attachment 238073
Bạn thử file này nha.
Mình theo ý kiến bạn @be09 mà làm ra đó ....
 

File đính kèm

  • TestCodeTaoSheetVaDoiTen.xlsm
    21.5 KB · Đọc: 31
Upvote 0
Chào bạn, bạn có thể nói rõ hơn được không. Mình đọc đi đọc lại vẫn chưa hiểu í bạn á. :D
Mình đang muốn hỏi nếu trường hợp trùng tên thì bạn muốn code chạy như thế nào?
VD như file của bạn: Bạn đã có 1 Sheet tên Table 4_D004 rồi, bạn nhấn nút 1 -> Tạo Sheet Mới -> Nút 2 đổi tên = tên ô G2
Nếu trùng thì bỏ qua k tạo nữa. hay cho ô C2 chạy tiếp file D005.
Cảm ơn bạn đã giúp đỡ nhé,
+ Trong trường hợp trùng tên thì mình sẽ bỏ qua lỗi đồng thời không tạo sheet và nhảy sang tên tiếp theo để tạo á bạn
Bài đã được tự động gộp:

Góp ý cho bạn:
1/ Theo tôi thì Sheet1 đã chứa dữ liệu rồi muốn làm cái gì đó thì dựa vào dữ liệu của sheet này chứ không nên Add sheet và đặt tên làm gì cho tốn công vô ích.
2/ Muốn sheet và đặt tên hàng loạt thì vào Sheet1 nối cột cột A và B vào cột C rồi dựa vào cột C để Tách sheet.
3/ Do Sheet1 có dữ liệu sơ sài và Sheet2 không có nội dung gì khác nên chẳng hiểu bạn muốn làm cái gì nên tôi chỉ góp ý 1/ và 2/. Còn có phát sinh cái gì nữa thì sẽ góp ý tiếp.
Em cảm ơn anh đã góp ý,
1. Do file chứa dữ liệu dữ liệu cần phải bảo mật nên khi em tạo file để demo thì có thiếu sót. File thực tế của em sẽ có khoản 5-7 sheet chứa dữ liệu và sử dụng các sheet này để xào nấu dữ liệu. Các sheet mới em cần tạo thêm thì sẽ tương ứng với 1 khách hàng và số lượng khách hàng thì biến động nên em cần tạo sheet như vậy để khi thêm data của khách hàng mới vào thì sau khi dùng 1 button sẽ tạo ra 1 cái sheet mới theo 1 form chuẩn để gửi cho khách hàng. Sau đó em sẽ tách các sheets mới tạo này ra 1 workbook riêng theo tên khách hàng và gửi cho khách hàng á anh.
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom