Code VBA lưu dữ liệu qua sheet khác.

Liên hệ QC

MeThuongNho

Thành viên thường trực
Tham gia
30/10/09
Bài viết
368
Được thích
77
Nghề nghiệp
Sale - Planning
Kính chào Anh/Chị,
Em có file đính kèm, có 3 code như sau:
Module 1: Code 1: Mã báo giá: Mabaogia. Code2: Lưu báo giá: LuuBG
Khi chạy code 2 thì có lệnh call code 1
Module 2: Code 3: Tính giá hàng loạt theo số thứ tự bên sheet hangloat. Code Giasave.
Tuy nhiên khi sử dụng code 3. em muốn khi tính giá mỗi số thứ tự đó thì cũng tự lưu qua sheet SUM theo code 2.
Em đặt call code 2 : Call LuuBG trước phần Next i trong code 3.

Nhưng khi chạy code nó có vẻ chạy chậm, xoay vòng vòng một hồi mới xong.
Anh chị xem giúp em code chỉnh sửa thế nào cho phù hợp và nhanh hơn một chút ạ.
Cám ơn mọi người nhiều!
 

File đính kèm

Upvote 0
Kính chào Anh/Chị,
Em có file đính kèm, có 3 code như sau:
Module 1: Code 1: Mã báo giá: Mabaogia. Code2: Lưu báo giá: LuuBG
Khi chạy code 2 thì có lệnh call code 1
Module 2: Code 3: Tính giá hàng loạt theo số thứ tự bên sheet hangloat. Code Giasave.
Tuy nhiên khi sử dụng code 3. em muốn khi tính giá mỗi số thứ tự đó thì cũng tự lưu qua sheet SUM theo code 2.
Em đặt call code 2 : Call LuuBG trước phần Next i trong code 3.

Nhưng khi chạy code nó có vẻ chạy chậm, xoay vòng vòng một hồi mới xong.
Anh chị xem giúp em code chỉnh sửa thế nào cho phù hợp và nhanh hơn một chút ạ.
Cám ơn mọi người nhiều!
Sáng nay tôi có đọc qua, nhưng có công việc đi Vũng Tàu nên không Góp ý.

1/ Sheet Tieuchuan để trống trơn, ai biết thằng ăn trộm nó nằm trong bồ lúa đâu mà chỉ.
2/ Sheet SUM ít ra phải có vài dòng dữ liệu thì người ta mới hiểu lấy cái gì chỗ nào để gán qua.

Nói chung cái gì có, thấy, hiểu thì mới có thành viên giúp, cái gì thấy khó quá thì bỏ qua.
 
Upvote 0
Kính chào Anh/Chị,
Em có file đính kèm, có 3 code như sau:
Module 1: Code 1: Mã báo giá: Mabaogia. Code2: Lưu báo giá: LuuBG
Khi chạy code 2 thì có lệnh call code 1
Module 2: Code 3: Tính giá hàng loạt theo số thứ tự bên sheet hangloat. Code Giasave.
Tuy nhiên khi sử dụng code 3. em muốn khi tính giá mỗi số thứ tự đó thì cũng tự lưu qua sheet SUM theo code 2.
Em đặt call code 2 : Call LuuBG trước phần Next i trong code 3.

Nhưng khi chạy code nó có vẻ chạy chậm, xoay vòng vòng một hồi mới xong.
Anh chị xem giúp em code chỉnh sửa thế nào cho phù hợp và nhanh hơn một chút ạ.
Cám ơn mọi người nhiều!
Tôi thấy code của bạn chủ yếu là thao tác trực tiếp trên sheet nên tốc độ chậm là đúng, cái nửa là sheet tieuchuan của bạn chắc có lẽ dùng công thức tham chiếu gì đấy (Do không có dữ liệu hoặc công thức nên đón mò) nên mỗi lần thay đổi giá trị ô F4 thì cập nhật lại giá trị sau đó mới đưa vào sheet SUM, đây là nguyên nhận chậm thứ 2. Tôi thấy bạn nên đưa dữ liệu thật và nêu mục đích cụ thể để anh em tìm hướng giải quyết khác xem có cải thiện tốc độ không, tối nay rảnh sửa code lại cho bạn xem tốc độ có cải thiện không.
Một kinh nghiệm hỏi bài là không nên đích danh người giúp vậy sẽ không có kết quả tốt đâu (như #5 đã trình bày).
 
Upvote 0
Tôi thấy code của bạn chủ yếu là thao tác trực tiếp trên sheet nên tốc độ chậm là đúng, cái nửa là sheet tieuchuan của bạn chắc có lẽ dùng công thức tham chiếu gì đấy (Do không có dữ liệu hoặc công thức nên đón mò) nên mỗi lần thay đổi giá trị ô F4 thì cập nhật lại giá trị sau đó mới đưa vào sheet SUM, đây là nguyên nhận chậm thứ 2. Tôi thấy bạn nên đưa dữ liệu thật và nêu mục đích cụ thể để anh em tìm hướng giải quyết khác xem có cải thiện tốc độ không, tối nay rảnh sửa code lại cho bạn xem tốc độ có cải thiện không.
Một kinh nghiệm hỏi bài là không nên đích danh người giúp vậy sẽ không có kết quả tốt đâu (như #5 đã trình bày).
Theo tôi cái này đơn giản nhất là dùng riêng 1 sheetForm để nhập liệu theo chiều dọc kết hợp Link qua Sheet Tieuchuan sau đó nhập liệu vào sheet SUM.

Do Sheet Tieuchua không có tiêu đề và cũng chẳng có dữ liệu nên chẳng hiểu (nó có trái ấu hay quả bồ hòn nằm trong đó) thì làm sao mà hiểu để góp ý làm cách nào cho nhanh gọn.
 
Upvote 0
Tôi thấy code của bạn chủ yếu là thao tác trực tiếp trên sheet nên tốc độ chậm là đúng, cái nửa là sheet tieuchuan của bạn chắc có lẽ dùng công thức tham chiếu gì đấy (Do không có dữ liệu hoặc công thức nên đón mò) nên mỗi lần thay đổi giá trị ô F4 thì cập nhật lại giá trị sau đó mới đưa vào sheet SUM, đây là nguyên nhận chậm thứ 2. Tôi thấy bạn nên đưa dữ liệu thật và nêu mục đích cụ thể để anh em tìm hướng giải quyết khác xem có cải thiện tốc độ không, tối nay rảnh sửa code lại cho bạn xem tốc độ có cải thiện không.
Một kinh nghiệm hỏi bài là không nên đích danh người giúp vậy sẽ không có kết quả tốt đâu (như #5 đã trình bày).
- Dạ đúng vậy ạ, tham chiếu ô F4 để lấy dữ liệu Dài, Rộng Cao qua.
(chỗ này sau này code ổn rồi mấy anh chỉ giúp em : lấy thêm nhiều dữ liệu nữa chứ k chỉ là Dài Rộng Cao không mà thêm 1 vài yếu tố khác
ví dụ thêm Sóng chỗ B26,B28, rồi các loại giấy từ C25:C29 .... ---> sẽ bổ sung dữ liệu bên sheet hàng loạt để lấy qua).
- Mục đích :
1. + Nhập liệu các ô màu hồng và vàng từ sheet Tiêu chuẩn. Sau đó có các kết quả ---> rồi sẽ lưu qua sheet SUM,
+ Sau đó lại nhập lại dữ liệu mới và cứ thế tính toán xong là lưu qua sheet SUM.
2. Chỉ sử dụng dữ liệu sheet hàng loạt khi cần thôi. Vì đôi khi các ô màu hồng bên sheet Tiêu chuẩn không thay đổi nhiều. Chỉ đổi một vài yếu tố thôi.
Em có up file mới, mong mọi người giúp ajh.
Trân trọng!
 

File đính kèm

Upvote 0
- Dạ đúng vậy ạ, tham chiếu ô F4 để lấy dữ liệu Dài, Rộng Cao qua.
(chỗ này sau này code ổn rồi mấy anh chỉ giúp em : lấy thêm nhiều dữ liệu nữa chứ k chỉ là Dài Rộng Cao không mà thêm 1 vài yếu tố khác
ví dụ thêm Sóng chỗ B26,B28, rồi các loại giấy từ C25:C29 .... ---> sẽ bổ sung dữ liệu bên sheet hàng loạt để lấy qua).
- Mục đích :
1. + Nhập liệu các ô màu hồng và vàng từ sheet Tiêu chuẩn. Sau đó có các kết quả ---> rồi sẽ lưu qua sheet SUM,
+ Sau đó lại nhập lại dữ liệu mới và cứ thế tính toán xong là lưu qua sheet SUM.
2. Chỉ sử dụng dữ liệu sheet hàng loạt khi cần thôi. Vì đôi khi các ô màu hồng bên sheet Tiêu chuẩn không thay đổi nhiều. Chỉ đổi một vài yếu tố thôi.
Em có up file mới, mong mọi người giúp ajh.
Trân trọng!
Chổ màu đỏ trong code của bạn đâu có chổ nào thể hiện sự thay đổi giá trị những ô đó đâu. Vì vậy tôi nghĩ để cho nhanh bạn nên đưa tất cả những giá trị của ô đó sang mảng, sau đó muốn dùng nó thì lấy ra từ mảng sẽ nhanh hơn là lấy từ sheet. Bạn cho ý kiến!
 
Lần chỉnh sửa cuối:
Upvote 0
Chổ màu đỏ trong code của bạn đâu có chổ nào thể hiện sự thay đổi giá trị những ô đó đâu. Vì vậy tôi nghĩ để cho nhanh bạn nên đưa tất cả những giá trị của ô đó sang mảng, sau đó muốn dùng nó thì lấy ra từ mảng sẽ nhanh hơn là lấy từ sheet. Bạn cho ý kiến!
Dạ cũng được anh giaiphap,
, Vậy em sửa form theo file mới này, anh xem giúp em 4 mảng như vậy ( chỗ màu hồng đó)
Cám ơn anh!
 

File đính kèm

Upvote 0

File đính kèm

Upvote 0
Upvote 0
Upvote 0

File đính kèm

Upvote 0
Hi Anh,
Là khi nhấn code Luu BG em không thấy kết quả bên sheet SUM.
Em đính kèm lại file.
Cám ơn Anh!
Bạn thêm đoạn code này.
Mã:
Get_Data
vào trước lệnh này.
Mã:
Ws.Range("B" & LastR).Resize(, 84) = Arr
Còn việc đúng hay sai ở các cột thì bạn tùy biến trong Get_Data
 
Upvote 0
Bạn thêm đoạn code này.
Mã:
Get_Data
vào trước lệnh này.
Mã:
Ws.Range("B" & LastR).Resize(, 84) = Arr
Còn việc đúng hay sai ở các cột thì bạn tùy biến trong Get_Data
Dạ cám ơn Anh nhiều,
Em đã sửa được.
Cám ơn Anh!
 
Upvote 0
Web KT

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

Back
Top Bottom