Giúp em File tự làm giá bằng VBA với ạ.

Liên hệ QC

ThuyTrang79

Thành viên hoạt động
Tham gia
13/2/20
Bài viết
140
Được thích
26
Em chào anh chị !
Em có up File kèm và mô tả yêu cầu trong trong file ở sheet "Mô Tả Yêu Cầu"
Trong file em có 2 phần, phần 1 đánh số để tự lấy CT sang lọc, phần 2 sau khi có KQ thì đánh số để tự làm giá ạ.
Anh Chị viết file có ý hay hợp lý hơn góp ý giúp em thêm ạ.
Nhờ anh chị viết giúp em VBA để chạy file với ạ.
Cảm ơn anh chị đã bớt thời gian giúp đỡ em, chúc anh chị cuối tuần vui vẻ !
 

File đính kèm

  • File Tự Làm Giá.xlsx
    222.6 KB · Đọc: 13
Không mấy ai đủ kiên nhẫn đọc mấy cái công thức của bạn để quy ngược thành lô gic tính toán đâu. Đấy là chưa kể trường hợp công cốc nếu công thức sai, không đầy đủ...

Bạn phải tự lập ra một bảng giải thích cách xem số. Trong các phân loại thì phải liệt kê theo thứ tự, cái nào xem trước, cái nào quan trọng hơn.

Ví dụ:
Luật căn bản, xem từ chữ số thứ mấy đến thứ mấy.
Điển hình tam hoa là gì? như thế nào là tam hoa? như thế nào là trông giống tam hoa nhưng phông phải, bởi vì...? tam hoa thì được bao nhiêu điểm, gần thì được bao nhiêu?
Sau khi xét tất cả các kiểu số, điểm sẽ được cộng lại và sắp hạng giá.
 
Upvote 0
Không mấy ai đủ kiên nhẫn đọc mấy cái công thức của bạn để quy ngược thành lô gic tính toán đâu. Đấy là chưa kể trường hợp công cốc nếu công thức sai, không đầy đủ...

Bạn phải tự lập ra một bảng giải thích cách xem số. Trong các phân loại thì phải liệt kê theo thứ tự, cái nào xem trước, cái nào quan trọng hơn.

Ví dụ:
Luật căn bản, xem từ chữ số thứ mấy đến thứ mấy.
Điển hình tam hoa là gì? như thế nào là tam hoa? như thế nào là trông giống tam hoa nhưng phông phải, bởi vì...? tam hoa thì được bao nhiêu điểm, gần thì được bao nhiêu?
Sau khi xét tất cả các kiểu số, điểm sẽ được cộng lại và sắp hạng giá.
Dạ các CT thức lọc (vd như tam hoa, sim ABAB, ...) em dùng CT excel và lưu ở cột F (sheet2) ạ, nên ko viết phần này ạ
VD em đánh số 1 ở D6 (sheet2) thì nó tự lấy CT đã lưu sẵn ở F6 (sheet2) sang cột G2 (sheet1) để chạy CT đó lọc
Sau khi chạy CT có KQ ở cột G (sheet1), em đánh tiếp số 1 ở C6 (sheet2) để nó tự lấy "Giá, Dấu Phân Cách, Kiểu Số" (sheet2) sang cột "Giá, Dấu Phân Cách, Kiểu Số" (ở Sheet1) nếu KQ cột G (sheet1) đang báo là 1
Trong quá trình lấy "Giá, Dấu Phân Cách, Kiểu Số" (sheet2) sang thì có 1 số điều kiện, em có viết các điều kiện đó trong file ở sheet "Mô Tả Yêu Cầu" ạ
 
Upvote 0
Dạ em mới up lại file đính kèm đầu bài, trong file em có mô tả lại yêu cầu ở sheet "Mô Tả Yêu Cầu" bằng vd để dễ hiểu hơn ạ,
Nhờ anh chị xem giúp em với ạ, em cảm ơn anh chị nhiều !
 
Upvote 0
Em mô tả lại file bằng vd cụ thể, mô tả ở sheet "Mô Tả Yêu Cầu" trong file ạ,
nhờ anh chị xem giúp em với, em cảm ơn anh chị nhiều ạ!
 

File đính kèm

  • File Tự Làm Giá 2.xlsx
    164.1 KB · Đọc: 10
Upvote 0
Upvote 0
xin phép cả nhà cho em post tạm bài ở đây ạ
Em có 1 file excel cần tách dữ liệu ở giữa 2 ký tự đặc biệt
Ký tự đặc biệt ở đây là dấu = = hoặc + + hoặc : : hoặc " "
cột tách dữ liệu là cột N
số lượng dữ liệu đổ vào mỗi lần là khác nhau về số dòng, số cột vẫn giữ nguyên
em có dùng hàm excel nhưng rất phức tạp và dễ nhầm lẫn
cả nhà giúp em dùng VBA xử lý trường hợp này với ạ
 

File đính kèm

  • Book2.xlsx
    50.8 KB · Đọc: 2
Upvote 0
Em mô tả lại file bằng vd cụ thể, mô tả ở sheet "Mô Tả Yêu Cầu" trong file ạ,
nhờ anh chị xem giúp em với, em cảm ơn anh chị nhiều ạ!
Có lẽ bạn chỉ cần nói rõ là điền cái gì từ sheet2 sang sheet1 theo điều kiện thế nào là giải quyết được. Các bước trung gian miễn trình bày cho đỡ rối.
 
Upvote 0
Có lẽ bạn chỉ cần nói rõ là điền cái gì từ sheet2 sang sheet1 theo điều kiện thế nào là giải quyết được. Các bước trung gian miễn trình bày cho đỡ rối.
Dạ đúng 100% như anh nói ạ, tại em dùng từ "File Tự Làm Giá" bị sai nên nhiều anh chị chưa hiểu bài viết của em ạ. :(
Em có mô tả lại cái cần điền file up lại ở #8 ạ.
Nhờ anh chị giúp em với ạ, em cảm ơn anh chị nhiều !
 
Lần chỉnh sửa cuối:
Upvote 0

File đính kèm

  • File Tự Làm Giá 2.xlsm
    179 KB · Đọc: 14
Upvote 0
Nhập các số vào code sẽ chạy
Không bảo hành khi code báo lung tung
- Em muốn bỏ thông báo "Done", chỉ thông báo lỗi khi có lỗi ạ, vì em thao tác nhiều nên muốn bỏ qua thông báo cho tiện dùng ạ.

- Em muốn nó cập nhật lại KQ mới khi thay đổi nội dung cho sẵn ở cột H,I,J sheet2 rồi gõ 1 vào cột D sheet1,
, giống như phần gõ số vào cột E sheet2 thì nó tự thay đổi các CT sang ạ.
(vd em gõ 1 vào hàng D2, hàng không có cho sẵn DL, thì nó tự xóa KQ đang có ở sheet1)
- Khi lấy giá điền sang cột E sheet1, nó tự so sánh giá, chỉ điền giá mới sang khi cell nào chưa có giá hoặc giá mới cao hơn giá đang có,
, bằng thì không lấy sang. Vì có trường hợp là số đó trùng với CT nào đó nên có giá trước đó.
Nếu đã lấy giá mới thì lấy kèm theo "thêm dấu chấm" và "ghi chú kiểu số" mới sang.

- Phần "thêm dấu chấm" có trường hợp em cho sẵn nhiều kiểu phân cách trong 1 cell, vd như ở I8,I9 sheet2,
Vì trong CT lọc cho sẵn ở G8,G9 sheet2 khi chạy lọc ở cột H sheet1 có báo KQ 1,2,3,4,5,…
. Trường hợp này em muốn quy định các kiểu phân cách cho sẵn bắt đầu bằng 1: và kết thúc kiểu bằng dấu ; (vd như ở I8,I9 sheet2)
. Khi cell nào ở cột H sheet1 có KQ là 1 thì nó tự lấy kiểu cho sẵn là 1:
, khi cell nào ở cột H sheet1 có KQ là 2 thì nó tự lấy kiểu cho sẵn là 2:
, tương tự cho các KQ 3,4,5,…
, nếu cell nào ở cột H sheet1 có KQ nhưng không cho sẵn kiểu "thêm dấu chấm" ở sheet2 thì nó chỉ thêm số 0 ở đầu tạo thành KQ
, áp dụng cho tất cả trường hợp ạ.

Em cảm ơn anh nhiều ạ !
 
Upvote 0
- Em muốn bỏ thông báo "Done", chỉ thông báo lỗi khi có lỗi ạ, vì em thao tác nhiều nên muốn bỏ qua thông báo cho tiện dùng ạ.

- Em muốn nó cập nhật lại KQ mới khi thay đổi nội dung cho sẵn ở cột H,I,J sheet2 rồi gõ 1 vào cột D sheet1,
, giống như phần gõ số vào cột E sheet2 thì nó tự thay đổi các CT sang ạ.
(vd em gõ 1 vào hàng D2, hàng không có cho sẵn DL, thì nó tự xóa KQ đang có ở sheet1)
- Khi lấy giá điền sang cột E sheet1, nó tự so sánh giá, chỉ điền giá mới sang khi cell nào chưa có giá hoặc giá mới cao hơn giá đang có,
, bằng thì không lấy sang. Vì có trường hợp là số đó trùng với CT nào đó nên có giá trước đó.
Nếu đã lấy giá mới thì lấy kèm theo "thêm dấu chấm" và "ghi chú kiểu số" mới sang.

- Phần "thêm dấu chấm" có trường hợp em cho sẵn nhiều kiểu phân cách trong 1 cell, vd như ở I8,I9 sheet2,
Vì trong CT lọc cho sẵn ở G8,G9 sheet2 khi chạy lọc ở cột H sheet1 có báo KQ 1,2,3,4,5,…
. Trường hợp này em muốn quy định các kiểu phân cách cho sẵn bắt đầu bằng 1: và kết thúc kiểu bằng dấu ; (vd như ở I8,I9 sheet2)
. Khi cell nào ở cột H sheet1 có KQ là 1 thì nó tự lấy kiểu cho sẵn là 1:
, khi cell nào ở cột H sheet1 có KQ là 2 thì nó tự lấy kiểu cho sẵn là 2:
, tương tự cho các KQ 3,4,5,…
, nếu cell nào ở cột H sheet1 có KQ nhưng không cho sẵn kiểu "thêm dấu chấm" ở sheet2 thì nó chỉ thêm số 0 ở đầu tạo thành KQ
, áp dụng cho tất cả trường hợp ạ.

Em cảm ơn anh nhiều ạ !
Muốn bỏ thông báo "Done" thì tìm xóa dòng lệnh có chữ "Done"
Mình chỉ giúp tới đây, bạn tìm người khác làm tiếp
 
Upvote 0
Muốn bỏ thông báo "Done" thì tìm xóa dòng lệnh có chữ "Done"
Mình chỉ giúp tới đây, bạn tìm người khác làm tiếp
Dạ em cảm ơn anh nhiều ạ !
Tại file em dùng thao tác cũng nhiều, nên nhờ anh chị giúp em thêm ở yêu cầu ở #14 để file hoàn thiện hơn với ạ.
Em cảm ơn anh chị rất nhiều ạ !
 
Upvote 0
Web KT
Back
Top Bottom