Điền dữ liệu theo điều kiện (1 người xem)

  • Thread starter Thread starter hvt268
  • Ngày gửi Ngày gửi

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

hvt268

Thành viên chính thức
Tham gia
27/7/14
Bài viết
74
Được thích
8
Mình không biết diễn giải cụ thể thế nào, mong muốn là điền dữ liệu vào cột C một cách tự động dựa vào điều kiện ở những vùng khác, các bạn có thể giúp mình với không
 

File đính kèm

Hic không ai giúp được mình sao
 
Mình chỉ có thể giúp bạn 1 macro thôi

[ThongBao]Hic không ai giúp được mình sao[/ThongBao]

Bạn nhấp vô biểu tượng trên trang tính để có kết quả của lần chạy macro mới
 

File đính kèm

Cảm ơn bạn. Mình đã tải về và dùng thử và thấy rất ok. Tuy nhiên mình không muốn dùng macro vì lí do sau:
1. Mình không biết gì về macro cũng như lập trình, vì vậy mình không biết cách áp dụng cho một file khác hoặc những ô khác, cột khác. Trong ví dụ mẫu của mình chỉ có buổi sáng, bây giờ muốn áp dụng cho cả buổi chiều nữa
2. Vì bảng tính thực tế của mình còn nhiều mục khác nên buộc phải khoá lại, nhưng khi khoá lại thì macro không chạy được nữa.
Vậy bạn có thể giúp mình sử dụng hàm hoặc nhiều hàm để đạt được kết quả mong muốn hay không? Nếu không được thì mình phải làm sao để có thể sử dụng khi khoá bảng tính và làm sao để áp dụng cho một file khác.
 
/(/ói về năng lực xài công thức thì có khi mình còn thua cả bạn nữa đó chứ lị!
Nếu muốn vậy, bạn chỉ còn chờ các 'Nhà Siêu Đại' về công thức mà thôi!

 
Vậy bạn có thể hướng dẫn mình áp dụng macro cho một file khác và khi khoá lại thì macro vẫn chạy được.
 
Cảm ơn bạn. Mình đã tải về và dùng thử và thấy rất ok. Tuy nhiên mình không muốn dùng macro vì lí do sau:
1. Mình không biết gì về macro cũng như lập trình, vì vậy mình không biết cách áp dụng cho một file khác hoặc những ô khác, cột khác. Trong ví dụ mẫu của mình chỉ có buổi sáng, bây giờ muốn áp dụng cho cả buổi chiều nữa
2. Vì bảng tính thực tế của mình còn nhiều mục khác nên buộc phải khoá lại, nhưng khi khoá lại thì macro không chạy được nữa.
Vậy bạn có thể giúp mình sử dụng hàm hoặc nhiều hàm để đạt được kết quả mong muốn hay không? Nếu không được thì mình phải làm sao để có thể sử dụng khi khoá bảng tính và làm sao để áp dụng cho một file khác.

cthuc còn phúc tạp hơn cả code
tham khảo thêm
 

File đính kèm

Cảm ơn bạn rất nhiều, cách làm của bạn đúng như mong muốn của mình. Tuy nhiên,
1. Khi mình copy công thức lên ô C6 thì nó báo lỗi #DIV/!
2 Bây giờ mình muốn áp dụng cho một file khác khi copy công thức sang thì nó báo lỗi #NAME? Mình không biết xử lý thế nào cả.
Bạn giúp mình xử lý rắc rồi với nhé
 
File cụ thể của mình đây, hơi khác so với file mình up trước đây, yêu cầu ở file này là nếu phần "Lớp" ở cột thời khoá biểu sáng/chiều giống với cột "lớp dạy" trong phần "số tiết/tuần" thì điền các mã tương ứng (như mong muốn đã nói.
- Bạn ChanhTQ@ có thể giúp mình file này với nhé nút lệnh mình đã tạo sẵn, bạn giúp mình tạo mã với nhé (điền cho cả buổi sáng và buổi chiều nhé)
- Bạn Let'GâuGâu giúp mình điền hàm với nhé (áp dụng cho cả sáng chiều và bắt đầu từ tiết 1)
 

File đính kèm

File cụ thể của mình đây, hơi khác so với file mình up trước đây, yêu cầu ở file này là nếu phần "Lớp" ở cột thời khoá biểu sáng/chiều giống với cột "lớp dạy" trong phần "số tiết/tuần" thì điền các mã tương ứng (như mong muốn đã nói.
- Bạn ChanhTQ@ có thể giúp mình file này với nhé nút lệnh mình đã tạo sẵn, bạn giúp mình tạo mã với nhé (điền cho cả buổi sáng và buổi chiều nhé)
- Bạn Let'GâuGâu giúp mình điền hàm với nhé (áp dụng cho cả sáng chiều và bắt đầu từ tiết 1)

2 cột thì cthuc chịu thua
làm bằng macro nha
 

File đính kèm

Lần chỉnh sửa cuối:
Cảm ơn bạn, nếu hàm không được thì dùng macro cũng ok, miễn là kết quả như mình mong muốn là được, bây giờ bạn có thể giúp mình cách áp dụng cho một file khác được không? (Cách tạo ra một macro tương tự ở một file khác)
 
Cảm ơn bạn, nếu hàm không được thì dùng macro cũng ok, miễn là kết quả như mình mong muốn là được, bây giờ bạn có thể giúp mình cách áp dụng cho một file khác được không? (Cách tạo ra một macro tương tự ở một file khác)

hãy mở file của nạn ra, nhấn Alt F11 để mở cửa sổ vba
nhấp chọn tab insert trên thanh công cụ, chọn module
sau đó mở file của tôi ra, quay lại cửa sổ vba, nhấp chọn module1 trên file của tôi chép toàn bộ code bên cửa sổ bên phải, chọn lại file của bạn patse vào module mà bạn mới tao ra
về code thì lưu ý một số điểm như sau
Mã:
Sub PhanMon()
Dim SoTiet, Sang, chieu As Variant, i, j, k As Long
Union([k6:k35], [n6:n35]).ClearContents
SoTiet = [P5:V35].Value 'đây là vùng số tiết
Sang = [j6:k35].Value 'đây là vùng dữ liệu buổi sáng
chieu = [m6:n35].Value 'đây là vùng dữ liệu buổi chiều

........................................
....................................
[j6:k35].Value = Sang 'đây là nơi nó trả lại kết quả buổi sáng
[m6:n35].Value = chieu 'đây là nơi nó trả lại kết quả buổi chiều
End Sub

nếu bạn có thay đổi vùng dữ liệu nguồn hay nơi nó trả lại kết quả thì sửa lại các đoạn code tôi đã ghi chú ở trên
 
Nhờ sự giúp đỡ của bạn mà mình đã đạt được kết quả như mong muốn. Cảm ơn bạn! Bạn cho mình hỏi thêm một chút, khi minh copy sheet HK1 (1) thành sheet HK1 (2) và bấm vào nút "điền mã môn" thì lệnh này vẫn thực thi ở sheet HK1 (1). Vậy có cách nào để khi copy sheet để khi lệnh bấm ở sheet nào thì thực thi ở sheet đó hay không
 
Nhờ sự giúp đỡ của bạn mà mình đã đạt được kết quả như mong muốn. Cảm ơn bạn! Bạn cho mình hỏi thêm một chút, khi minh copy sheet HK1 (1) thành sheet HK1 (2) và bấm vào nút "điền mã môn" thì lệnh này vẫn thực thi ở sheet HK1 (1). Vậy có cách nào để khi copy sheet để khi lệnh bấm ở sheet nào thì thực thi ở sheet đó hay không

code tôi không khai báo cụ thể sheet nào, nên nó sẻ chạy trên sheet hiện hành( tức là sheet nào mà bạn đang chọn)
 
Hic nhưng khi mình copy sheet đó thành nhiều sheet khác nhau và bấm thử thì kết quả là nó chạy trên sheet gốc bạn ạ, hic hic
 
Hic nhưng khi mình copy sheet đó thành nhiều sheet khác nhau và bấm thử thì kết quả là nó chạy trên sheet gốc bạn ạ, hic hic

không biết thao tác copy của bạn là sao?
cái nút bấm nằm ở sheet nào?
bạn thử thao tác như vậy xem
1-nhấp chuốt phải vào tab sheet HK1
2-chọn Move ỏ Copy trong cái list
3- đánh dấu vào cái ô Create a copy
4- xong đổi tên sheet theo yêu cầu
5- chạy code kiểm tra
 
Từ gợi ý của bạn mình đã tìm ra nguyên nhân. Lúc copy đoạn code thì mình paste vô sheet HK1 chứ không thực hiện chọn insert... Modun..., mình đã xoá toàn bộ code và modun, sau đó tạo lại modun mới như bạn đã hướng dẫn, giờ thì OK rồi
 

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

Back
Top Bottom