Giúp em cách kéo công thức trái chiều!

Liên hệ QC

Duong_VBA

Thành viên chính thức
Tham gia
10/11/07
Bài viết
89
Được thích
26
Giả sử em có 5 ô muốn lấy dữ liệu là: c1:g1. Tại b2 đặt công thức: =C1 bây giờ em muốn kéo dê chuột để đặt công thức xuống sao cho b3=d1; b4=e1; b5= f1; b6=g1 thì công thức phải thay đổi thế nào mới đạt được mục đích! Thank!
 
Duong_VBA đã viết:
Giả sử em có 5 ô muốn lấy dữ liệu là: c1:g1. Tại b2 đặt công thức: =C1 bây giờ em muốn kéo dê chuột để đặt công thức xuống sao cho b3=d1; b4=e1; b5= f1; b6=g1 thì công thức phải thay đổi thế nào mới đạt được mục đích! Thank!

Thì thực hiện như sau:
+ chọn b2:b5
+ gõ công thức sau
PHP:
=TRANSPOSE(C1:G1)
+ sau đó bấm Ctrl+Shift+Enter

thế là OK
 
Bạn chọn khối c1:g1 copy rồi chọn cell b2 past special, chọn tránpose OK.
 
Dùng công thức này:
B2=OFFSET($C$1;0;ROW(B2)-2)
Nếu tham chiếu thay đổi thì phải sửa công thức cho phù hợp
 
ptm0412 đã viết:
Dùng công thức này:
B2=OFFSET($C$1;0;ROW(B2)-2)
Nếu tham chiếu thay đổi thì phải sửa công thức cho phù hợp

+ Dùng Offset rất hay,
+ cám ơn ptm0412, tigertiger nhớ có công thích gì đó mà quên lun , hic hic
+ Sửa lại 1 chút cho ngắn gọn lun

PHP:
 ô B2    =OFFSET($C$1;0;ROW()-2)
 
Góp thêm một cách Tại
B3=INDIRECT(ADDRESS(1,ROW()))
Fill xuống.
 
Trong các công thức thì có TRANSPOSE là chính xác nhất...
Các công thức khác như OFFSET, INDIRECT chỉ đúng tại 1 cell cụ thể nào đó... Khi mang công hoặc chuyển vùng nguồn sang dòng khác, cột khác hoặc sheet khác mà ko biết chỉnh lại thì công thức sẽ sai ngay...
ANH TUẤN
 
anhtuan1066 đã viết:
Trong các công thức thì có TRANSPOSE là chính xác nhất...
Các công thức khác như OFFSET, INDIRECT chỉ đúng tại 1 cell cụ thể nào đó... Khi mang công hoặc chuyển vùng nguồn sang dòng khác, cột khác hoặc sheet khác mà ko biết chỉnh lại thì công thức sẽ sai ngay...
ANH TUẤN
Bác Tuấn ới nếu khi sử dụng công thức thì ta phải biết về nó kể cả khi không biết mà nhờ người khác lập ct hộ thì mình cũng phải nghiên cứu để hiểu được ct đó thì mới nắm bắt và thực sự hiểu về nó. còn như ta chỉ copy công thức của người khác để dùng mà không tìm hiểu về nó thì khác gì cái máy copy đâu Bác. Trên là những ct ta có thể dùng cho trường hợp này nếu có thay đổi thì ta có thể sửa lại cho phù hợp với yêu cầu khác (nếu ta hiểu về ct đó). Công thức chính xác là công thức cho kết quả đúng cho trường hợp cụ thể nào đó. Nếu mà không hiểu công thức như thế nào thì dù có dùng Transpose hay ct nào khác thì cũng rất khó khi thay đổi vùng hay địa chỉ tham chiếu mà Bác.
 
Sở dĩ tôi nói thế là vì tôi đã từng giúp cho các bạn khác về công thức dạng này.. cứ tưởng ngon ăn, ai ngở cứ bị hỏi lại: "Anh ơi sao em làm trên file cũa em lại ko dc"... Chã biết phải giãi thích như thế nào nữa.. vì chỉ 1 công thức ngắn tí teo nhưng liên quan đến khá nhiều kiến thức
 
anhtuan1066 đã viết:
Sở dĩ tôi nói thế là vì tôi đã từng giúp cho các bạn khác về công thức dạng này.. cứ tưởng ngon ăn, ai ngở cứ bị hỏi lại: "Anh ơi sao em làm trên file cũa em lại ko dc"... Chã biết phải giãi thích như thế nào nữa.. vì chỉ 1 công thức ngắn tí teo nhưng liên quan đến khá nhiều kiến thức
Đúng như Bác nói có nhiều trường hợp vậy đó là vì bệnh quan liêu đó mà ngồi dưới gốc sung chỉ cần hoàn thành công việc của mình không cần biết làm như thế nào, còn những bạn thật sự muốn tìm hiểu thì lại khác.
 
Ngoài hàm TRANSPOSE luôn cho kết quã chính xác, tôi còn có 1 cách nữa cũng chính xác ko kém:
1> Trước tiên hãy đếm xem dử liệu cũa bạn có bao nhiêu cell... (Như ví dụ cũa bạn thì từ C1:G1 là 5 cell)
2> Tại 1 cell bất kỳ, bạn gõ vào công thức sau:
Mã:
=OFFSET($C$1,0,ROW(1:1)-1)
Kéo fill công thức xuống...
Và thêm 1 chiêu nữa cho phép lấy kết quã ngược từ G1 đến C1
Mã:
=OFFSET($C$1,0,5-ROW(1:1))
(hồi nãy đếm số cell là dùng cho công thức này đây)
Hoặc giã như dùng công thức tiếp theo đây thì thậm chỉ khỏi cần đếm số cell luôn
Mã:
=OFFSET($G$1,0,-ROW(1:1)+1)
Giờ thử dời cell công thức đi nơi khác xem... Kết quã vẫn chính xác
Ai cha cha... cã 1 trời công thức
ANH TUẤN
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom