Mẫu cần là mẫu chiđây là mẫu mình cần .
mình cần dùng hàm chứ không dùng VBA .
mọi người xem giúp mình nhé .
=SUMPRODUCT((D4:N4=B4)*(MOD(COLUMN(D4:N4)-COLUMN(D4)+1,2)=0))
Mẫu cần là mẫu chi
Nếu B4 chứa số 4 thì công thức tại ô kết quả là
Mã:=SUMPRODUCT((D4:N4=B4)*(MOD(COLUMN(D4:N4)-COLUMN(D4)+1,2)=0))
Mẫu cần là mẫu chi
bạn ơi . mình muốn tìm số cuối cùng của cột chẵn thì sửa hàm như nào bạn , nếu số cuối cùng vào cột lẻ thì bỏ qua . mình loay hoay với hàm mod mà chưa được . cảm ơn bạn nhiều :d
Thử:mình muốn tìm số cuối cùng của cột chẵn thì sửa hàm như nào bạn , nếu số cuối cùng vào cột lẻ thì bỏ qua
=LOOKUP(100,D4:N4/MOD(COLUMN(A:Z)-1,2))
Nên làbạn ơi . mình muốn tìm số cuối cùng của cột chẵn thì sửa hàm như nào bạn , nếu số cuối cùng vào cột lẻ thì bỏ qua . mình loay hoay với hàm mod mà chưa được . cảm ơn bạn nhiều :d
=LOOKUP(2,1/(MOD(COLUMN(D4:N4)-COLUMN(D4)+1,2)=0),D4:N4)
bạn ơi mình chạy thì khi mình xóa số cuối thì bị thành 0 chứ không hiện số cuối bạn ah . bạn có thể sửa giúp mình được koThử:
Mã:=LOOKUP(100,D4:N4/MOD(COLUMN(A:Z)-1,2))
Thân
Thì bằng 0 là chuẩn rùi, vì excel coi ô rỗng là bằng 0bạn ơi mình chạy thì khi mình xóa số cuối thì bị thành 0 chứ không hiện số cuối bạn ah . bạn có thể sửa giúp mình được ko![]()
Nên là
Mã:=LOOKUP(2,1/(MOD(COLUMN(D4:N4)-COLUMN(D4)+1,2)=0),D4:N4)
Thì bằng 0 là chuẩn rùi, vì excel coi ô rỗng là bằng 0 (do bạn quét dữ liệu đến tận cột Z?)mình gửi file bạn xem giúp mình nhé . cảm ơn bạn trước nhé![]()
Vậy thì vầy:bạn ơi mình chạy thì khi mình xóa số cuối thì bị thành 0 chứ không hiện số cuối bạn ah . bạn có thể sửa giúp mình được ko![]()
B4=LOOKUP(10^35,OFFSET($D4,,,,CEILING(COUNTIF($D4:$ZZ4,">0"),2))/MOD(COLUMN($A:$ZZ)-1,2))
B4=LOOKUP(10^35,OFFSET($D4,,,,CEILING(LOOKUP(2,1/$D4:$ZZ4,COLUMN($A:$ZZ)),2))/MOD(COLUMN($A:$ZZ)-1,2))
bạn ơi mình muốn sửa theo cột mình muốn : VD từ cột A mình muốn chuyển sang Cột D nhưng khi mình chuyển thế thì gây ra lỗi bạn à .Vậy thì vầy:
Enter fill xuốngMã:B4=LOOKUP(10^35,OFFSET($D4,,,,CEILING(COUNTIF($D4:$ZZ4,">0"),2))/MOD(COLUMN($A:$ZZ)-1,2))
Kỹ tính hơn chút phải vầy:
Thay đoạn COUNTIF($D4:$ZZ4,">0") bằng LOOKUP(2,1/$D4:$ZZ4,COLUMN($A:$ZZ))
Như sau:
Mã:B4=LOOKUP(10^35,OFFSET($D4,,,,CEILING(LOOKUP(2,1/$D4:$ZZ4,COLUMN($A:$ZZ)),2))/MOD(COLUMN($A:$ZZ)-1,2))
Thân
Bạn kiệm lời quá, kết quả bằng bao nhiêu với các ví dụ (tôi hỏi bạn trên 2 post rồi)bạn ơi mình muốn sửa theo cột mình muốn : VD từ cột A mình muốn chuyển sang Cột D nhưng khi mình chuyển thế thì gây ra lỗi bạn à .
B4=LOOKUP(10^35,OFFSET($D4,,,,CEILING(LOOKUP(2,1/$D4:$ZZ4,COLUMN($A -> D:$ZZ)),2))/MOD(COLUMN($A ->D:$ZZ)-1,2)) nhưng bị lỗi thì mình cần sửa gì thêm nữa bạn . cảm ơn nhiều![]()
Công thức MOD(COLUMN($A:$ZZ)-1,2) nhằm tạo 1 mảng hàng ngang: từ {1,2,3,4,....} thành mảng {0,1,0,1,0,1....} ứng với việc phân cột: {lẻ,chẳn,lẻ,chẳn,...}.bạn ơi mình muốn sửa theo cột mình muốn : VD từ cột A mình muốn chuyển sang Cột D nhưng khi mình chuyển thế thì gây ra lỗi bạn à .
B4=LOOKUP(10^35,OFFSET($D4,,,,CEILING(LOOKUP(2,1/$D4:$ZZ4,COLUMN($A -> D:$ZZ)),2))/MOD(COLUMN($A ->D:$ZZ)-1,2)) nhưng bị lỗi thì mình cần sửa gì thêm nữa bạn . cảm ơn nhiều![]()
Cái này hay, nhưng có 1 điểm khuyết là : Sai lệch khi chèn cột A của bảng tínhCông thức MOD(COLUMN($A:$ZZ)-1,2) nhằm tạo 1 mảng hàng ngang: từ {1,2,3,4,....} thành mảng {0,1,0,1,0,1....} ứng với việc phân cột: {lẻ,chẳn,lẻ,chẳn,...}.
Nên nó không liên can cột chứa dữ liệu của bạn, thì không nên thay đổi.
Thân
Công thức MOD(COLUMN($A:$ZZ)-1,2) nhằm tạo 1 mảng hàng ngang: từ {1,2,3,4,....} thành mảng {0,1,0,1,0,1....} ứng với việc phân cột: {lẻ,chẳn,lẻ,chẳn,...}.
Nên nó không liên can cột chứa dữ liệu của bạn, thì không nên thay đổi.
Thân
Cái này hay, nhưng có 1 điểm khuyết là : Sai lệch khi chèn cột A của bảng tính
Nên sử dụng thì cần cân nhắc Không chèn cột A
Vẫn kiệm lợivì mình muốn chủ động trong việc chọn cột , các bẳng tính của mình cột đối chiếu không sắp xếp giống nhau nên mình cần tùy biến cột đó , Cảm ơn bạn, mình loay hoay mãi mà vẫn chưa thể tùy biến theo ý mình được ,
B4=LOOKUP(10^35,OFFSET($D4,,,,CEILING(LOOKUP(2,1/$D4:$ZZ4,COLUMN($A -> D:$ZZ)),2))/MOD(COLUMN($A ->D:$ZZ)-1,2)) nhưng bị lỗi thì mình cần sửa gì thêm
Bài đã được tự động gộp:
ý mình là tính từ cột cần tính mà không lấy mốc là cột A đó![]()
Vẫn kiệm lợi
Kết quả lấy sao?
Gia cát Dự (nickname Đoán Toàn Sai): Có phải bạn muốn lấy giá trị cuối cùng (có số) của dòng, nếu giá trị cuối cùng đó nằm ở cột Lẻ thì lấy =0, cột chẵn thì lấy giá trị ô đó
Vậy GiaCatDu trên có đúng hay không hay bạn muốn khác?hàm ở trên là ok rồi bạn , chỉ là mình muốn tùy biến cho cột A
VD
COLUMN($A -> D:$ZZ)),2))/MOD(COLUMN($A ->D:$ZZ)
cột mình cần tính là cột H , sheet khác lại cần tính từ cột O , nhưng khi mỗi lần mình thay cột theo ý mình thì lại lỗi và mình chưa biết sửa chỗ nào cho đúng .
Vậy GiaCatDu trên có đúng hay không hay bạn muốn khác?
Vì nếu nickname DoanToanSai là đúng thì có công thức khác
Tôi hỏi về GiaCatDu và DoanToanSai, thì bạn trả lời 1 nẻo: hàm ... hàm đó có phải của tôi đâuhàm trên là đúng nhưng mình muốn tùy biến cho cột bắt đầu không phải là cột A
bạn có thể giúp mình theo cách của bạn chứ![]()
=IF(MOD(LOOKUP(2,1/D4:Z4,COLUMN(D4:Z4)-COLUMN(D4)+1),2),0,LOOKUP(2,1/D4:Z4,D4:Z4))
Bạn nên mô tả rõ ràng yêu cầu của bạn. Đừng nên lấy một hướng nào đó, công thức nào đó để làm tiêu chí rồi bắt người khác phải theo khuôn đó. Người khác có thể có ý tưởng khác dựa trên yêu cầu của bạn. Câu hỏi của bạn tam888 rất rõ rànghàm trên là đúng nhưng mình muốn tùy biến cho cột bắt đầu không phải là cột A
bạn có thể giúp mình theo cách của bạn chứ![]()
Chỉ là trả lời: "Đúng thế", "Không phải thế". Tại sao bạn lại không trả lời?Có phải bạn muốn lấy giá trị cuối cùng (có số) của dòng, nếu giá trị cuối cùng đó nằm ở cột Lẻ thì lấy =0, cột chẵn thì lấy giá trị ô đó
=LOOKUP(10^99;$D4:$ZZ4)*MOD(LOOKUP(10^99;(COLUMN($A4:$ZZ4)-1)/($D4:$ZZ4<>""));2)
=LOOKUP(10^99;$O4:$ZZ4)*MOD(LOOKUP(10^99;(COLUMN($A4:$ZZ4)-1)/($O4:$ZZ4<>""));2)
hoặc
=LOOKUP(10^99;$H4:$ZZ4)*MOD(LOOKUP(10^99;(COLUMN($A4:$ZZ4)-1)/($H4:$ZZ4<>""));2)
Tôi hỏi về GiaCatDu và DoanToanSai, thì bạn trả lời 1 nẻo: hàm ... hàm đó có phải của tôi đâu
Thôi
Thử phương án này
Mã:=IF(MOD(LOOKUP(2,1/D4:Z4,COLUMN(D4:Z4)-COLUMN(D4)+1),2),0,LOOKUP(2,1/D4:Z4,D4:Z4))
Vậy bạn chịu khó đem file chứa khoảng 3 sheet có Vùng khác nhau lên đi, nhìn thực tế file mới biết bạn đang gặp khó ở chỗ nào, lúc đó mới có công thức phù hợp cho trường hợp của bạn.bạn ơi mình muốn sửa theo cột mình muốn : VD từ cột A mình muốn chuyển sang Cột D nhưng khi mình chuyển thế thì gây ra lỗi bạn à .
B4=LOOKUP(10^35,OFFSET($D4,,,,CEILING(LOOKUP(2,1/$D4:$ZZ4,COLUMN($A -> D:$ZZ)),2))/MOD(COLUMN($A ->D:$ZZ)-1,2)) nhưng bị lỗi thì mình cần sửa gì thêm nữa bạn . cảm ơn nhiều![]()
B4=IF(MOD(SUM(AGGREGATE({14,15},6,COLUMN($D4:$ZZ4)/($D4:$ZZ4>0),1)*{1,-1}),2),1/LOOKUP(2,1/$D4:$ZZ4),)
Bạn nên mô tả rõ ràng yêu cầu của bạn. Đừng nên lấy một hướng nào đó, công thức nào đó để làm tiêu chí rồi bắt người khác phải theo khuôn đó. Người khác có thể có ý tưởng khác dựa trên yêu cầu của bạn. Câu hỏi của bạn tam888 rất rõ ràng
Chỉ là trả lời: "Đúng thế", "Không phải thế". Tại sao bạn lại không trả lời?
Nếu câu trả lời cho bạn tam888 là "Đúng thế", và tôi hiểu được việc thay vùng thì ...
Xin nhớ là nếu vùng bắt đầu từ cột nào - cột mốc - thì cột đó tính là lẻ. Tức nếu bắt đầu từ D thì cột D tính là lẻ. Nếu bắt đầu từ cột O thì cột O tính là lẻ, nếu cột mốc là H thì cột H tính là lẻ v...v
Khi thay đổi cột mốc thành O hay H thì đổi D thành O hay H, mọi chỗ khác không đổi. TứcMã:=LOOKUP(10^99;$D4:$ZZ4)*MOD(LOOKUP(10^99;(COLUMN($A4:$ZZ4)-1)/($D4:$ZZ4<>""));2)
Mã:=LOOKUP(10^99;$O4:$ZZ4)*MOD(LOOKUP(10^99;(COLUMN($A4:$ZZ4)-1)/($O4:$ZZ4<>""));2) hoặc =LOOKUP(10^99;$H4:$ZZ4)*MOD(LOOKUP(10^99;(COLUMN($A4:$ZZ4)-1)/($H4:$ZZ4<>""));2)
Vậy bạn chịu khó đem file chứa khoảng 3 sheet có Vùng khác nhau lên đi, nhìn thực tế file mới biết bạn đang gặp khó ở chỗ nào, lúc đó mới có công thức phù hợp cho trường hợp của bạn.
Cũng đưa ra thêm 1 hướng theo dõi cho bạn tham khảo, như file đính kèm dưới đây, chỉ cần bạn xác định duy nhất Vùng chứa dữ liệu, thì công thức sẽ tự xem xét và phân chia cột chẳn và lẻ tùy theo thứ tự của số phát sinh đầu tiên (lúc nào cũng tính là 1 lẻ). Giả sử:
Công thức sau chỉ cần xác định Vùng 1 lần lúc lập, và không cần phải chỉnh đi chỉnh lại là: cột A, hay cột D, hay cột O, cột H... cột nào là đầu tiên, nó không quan tâm nữa. Cụ thể:
- Vùng số liệu là D4: ZZ4, số liệu phát sinh đầu tiên tại cột D4, thì nó sẽ tính D là cột 1 (lẻ). (Xem stt tại D3: Z3)
- Vùng số liệu là D5: ZZ5, số liệu phát sinh đầu tiên tại cột G5, thì nó sẽ tính G là cột 1 (lẻ). (Xem stt tại D6: Z6)
Enter fill xuống.Mã:B4=IF(MOD(SUM(AGGREGATE({14,15},6,COLUMN($D4:$ZZ4)/($D4:$ZZ4>0),1)*{1,-1}),2),1/LOOKUP(2,1/$D4:$ZZ4),)
Bạn cứ tự nhiên trình bày những khó khăn của mình, đừng ngại bất kỳ điều gì.
Chúc bạn học tập vui với GPE
Thân