Hỏi về công thức tính %, kết quả trả về #DIV/0! (5 người xem)

  • Thread starter Thread starter Stefa
  • Ngày gửi Ngày gửi
Liên hệ QC

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

Stefa

Thành viên mới
Tham gia
4/11/18
Bài viết
3
Được thích
2
Chào các anh chị!
Như hình dưới em muốn tính % của ngày cuối so với ngày đầu tiên có dữ liệu, nhưng hàng 3,5,6 dữ liệu có sau ngày 31 nên không tính được theo công thức ô G2.
Anh chị cho em hỏi có cách nào để tính được % cho tất cả các hàng bằng 1 công thức không ah? Em cảm ơn!
1541322223428.png
 

File đính kèm

Chào các anh chị!
Như hình dưới em muốn tính % của ngày cuối so với ngày đầu tiên có dữ liệu, nhưng hàng 3,5,6 dữ liệu có sau ngày 31 nên không tính được theo công thức ô G2.
Anh chị cho em hỏi có cách nào để tính được % cho tất cả các hàng bằng 1 công thức không ah? Em cảm ơn!
View attachment 206986
Thử:
Mã:
G2=F2/OFFSET(A2,,MATCH(1,INDEX(N(B2:F2>0),),),)-1
Chỉ Enter, fill xuống

Thân
 
Viết xong hàm rồi thấy hàm của anh em cất hàm em vô tủ luôn. :p
Sao vậy em!?

Cứ giống như @huonglien1901, mạnh dạn đem lên để anh em còn góp ý, lúc đó mới biết em còn thiếu ở điểm nào mà hỗ trợ thêm cho em.

Tự nhiên và dũng cảm đi em, chỉ sợ nhất là mình không nghĩ ra được cách làm.

Thân
 
Sao vậy em!?

Cứ giống như @huonglien1901, mạnh dạn đem lên để anh em còn góp ý, lúc đó mới biết em còn thiếu ở điểm nào mà hỗ trợ thêm cho em.

Tự nhiên em, chỉ sợ nhất là mình không nghĩ ra được cách làm.

Thân
Dạ em làm hàm mảng, nên nó sẽ nặng hơn hàm thường, hì hì.
G2=(F2/OFFSET($A2,,MATCH(TRUE,B2:F2<>"",0),,))-1
 
Chào các anh chị!
Như hình dưới em muốn tính % của ngày cuối so với ngày đầu tiên có dữ liệu, nhưng hàng 3,5,6 dữ liệu có sau ngày 31 nên không tính được theo công thức ô G2.
Anh chị cho em hỏi có cách nào để tính được % cho tất cả các hàng bằng 1 công thức không ah? Em cảm ơn!
View attachment 206986
Hy vọng đúng theo ý bạn
Theo mình hiểu công thức: (số cuối-số đầu)/số đầu ?
 

File đính kèm

Lần chỉnh sửa cuối:
Đoạn LOOKUP có thể rút gọn:

=LOOKUP(10E35,B2:F2)/INDEX(B2:F2,MATCH(1,INDEX(N(B2:F2>0),),0))-1

Một số thành viên thích INDEX hơn OFFSET vì cho rằng OFFSET dễ bay hơi???????????????.
Chắc lúc mần ra hàm OFFSET anh Bill đang "xông hơi" trong mát xa Thái.
/-*+//-*+//-*+/
 
Đây là cách gọi tên tôn trọng theo lối cổ đó bạn.
Họ gọi theo họ và thêm chữ" quân" nữa. Ví như Quách Tấn gọi Nguyễn Hiến Lê là Nguyễn quân.
Có một số cách gọi tên phải né kỵ húy ,các sĩ tử ngày xưa nằm lòng điều này. Ví như vợ Minh Mạng tên Hoa, nên cây cầu phải gọi là Cầu Bông. Vũ(Võ), Châu (Chu).Nhậm(Nhiệm)
Thời nhà Nguyễn điều kỵ húy đã thành quốc luật.
 
Đây là cách gọi tên tôn trọng theo lối cổ đó bạn.
Họ gọi theo họ và thêm chữ" quân" nữa. Ví như Quách Tấn gọi Nguyễn Hiến Lê là Nguyễn quân.
Có một số cách gọi tên phải né kỵ húy ,các sĩ tử ngày xưa nằm lòng điều này. Ví như vợ Minh Mạng tên Hoa, nên cây cầu phải gọi là Cầu Bông. Vũ(Võ), Châu (Chu).Nhậm(Nhiệm)
Thời nhà Nguyễn điều kỵ húy đã thành quốc luật.
Giọng hành văn này quá rõ chú Ca nhà ta!

Khà khà khà.
/-*+//-*+//-*+/
 
Vì hàm dễ bay hơi luôn được tính lại liên tục khi Excel thực hiện tính (Automatic Calculation) cho dù các tham chiếu không thay đổi. Có hàng ngàn volatile thì mới biết thế nào là lễ độ.

Không phải chuyện thích hay không. Có những tình huống khi thay OFFSET bằng các hàm khác thì code sẽ phức tạp hơn nhiều, làm chậm hơn nhiều thì cực chẳng đã nên dùng OFFSET. Nhưng nếu có thể thay bằng các hàm khác mà độ phức tạp và tốc độ tương đương thì không nên dùng volatile. Không ai nói là không nên dùng OFFSET, mà chỉ nói là không nên lạm dụng. Đừng tập cho mình thói quen là cứ gì cũng OFFSET.

Mà nhiều người cứ quan trọng chuyện công thức ngắn. Ngắn mà nhanh thì mới tốt. Có nhiều công thức ngắn thật nhưng chậm. Công thức nên đơn giản, dễ bảo trì, tốc độ tốt. Sau đó mới là ngắn dài. Vì công thức dài thì chỉ mất thêm công để gõ. Còn chuyện Excel tính nhanh hay chậm lại không phụ thuộc vào độ dài ngắn của công thức mà phụ thuộc vào thuật toán được dùng trong công thức.
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom