Lấy tên sheet vào công thức

Liên hệ QC

phamduydn

Thành viên hoạt động
Tham gia
27/6/08
Bài viết
155
Được thích
259
Nghề nghiệp
Engineering
Các bạn giúp mình cách đưa tên sheet vào trong công thức để có thể tính tổng sản lượng từ ngày đầu tháng đến ngày hôm nay (mỗi ngày 1 sheet). Chú thích trong file đính kèm. Cảm ơn trước nha.
 

File đính kèm

  • Laytensheetvaocongthuc.xls
    21.5 KB · Đọc: 207
Bạn thử công thức:
Mã:
B5 =INDIRECT("'"&B$4&"'!E"&ROW())
Chú ý coi chừng tên sheet của bạn không giống với tiêu để cột nha (sheet Ngay 2-6 (hoi))
 
Bạn thử công thức:
Mã:
B5 =INDIRECT("'"&B$4&"'!E"&ROW())
Chú ý coi chừng tên sheet của bạn không giống với tiêu để cột nha (sheet Ngay 2-6 (hoi))

Cảm ơn bạn hi. Bạn giải giúp mình được bên sheet tổng kết tháng rồi.

Còn vấn đề quan trọng là cách lập các công thức trong các ô màu đỏ ở cột F của các sheet ngày.
Vì tất cả các sheet của ngày có định dạng giống nhau nên khi mình chỉnh sửa, thêm nội dung báo cáo, mình đêu group tất cả các sheet lại và lập công thức chung cho tất cả các sheet. Nhưng chỉ riêng các công thức ở cột F vì phải lấy dữ liệu của sheet trước nó nên mình chịu, phải sửa trong từng sheet rất mắc công. Nên mình muốn lập công thừc mà có thể lấy tên sheet trước sheet hiện tại để có thể tính được.

(hi, mạng chậm quá, khó post bài thiệt)
 
Lần chỉnh sửa cuối:
Bài này cũng khó lắm đây!
Bạn tham khảo cái này nhé:
http://www.giaiphapexcel.com/forum/showthread.php?t=10911
Tôi chỉ tính tổng ở 2 cell đầu, còn trung bình thì chả biết tính cách nào!

Cảm ơn bạn.
Như thế nào nhỉ, nếu mình đổi tên sheet "ngay 1-6" thành số "1", ngày 2 là "2"... thì có dễ hơn không bạn?

Ủa, Mà bạn tính tổng được thì tính trung bình được chứ ạh. Mình không biết công thức bạn tính tổng là như thế nào?
 
Lần chỉnh sửa cuối:
Tính xong rồi đây!
Bạn xem thử có đúng không nha!
(Nếu tên sheet của bạn là số: 1, 2, 3.... thì càng dể)
 

File đính kèm

  • Tongnhieusheet_02.xls
    28.5 KB · Đọc: 143
Lần chỉnh sửa cuối:
Nếu bạn đồng ý đổi tên sheet thành số 1, 2, 3 thì tôi sẽ có cách khác không dùng cột phụ!
Xem file nhé!
 

File đính kèm

  • Tongnhieusheet_03.xls
    22.5 KB · Đọc: 97
Lần chỉnh sửa cuối:
Nếu bạn đồng ý đổi tên sheet thành số 1, 2, 3 thì tôi sẽ có cách khác không dùng cột phụ!
Xem file nhé!

Tính xong rồi đây!
Bạn xem thử có đúng không nha!
(Nếu tên sheet của bạn là số: 1, 2, 3.... thì càng dể) Xem file nhé!

Cảm ơn bạn rất nhiều nhưng cả 2 file bạn gửi mình đều để lỗi #NAME?. Có phải là do mình đang dùng Excel 2003 nên không đọc được công thức của bạn?
Nếu thế thì không biết phải làm sao, vì laptop công ty mình hạn chế người dùng chỉ cài các phàn mềm mà cty đã mua và chỉ có IT đăng nhập Admin mới thay đổi được.
 
Bạn vào tools, Macro, security chọn chế độ low thì các hàm macro4 mới chạy được.
Với lại bài này không cần hàm macro4. Vì lũy kế các sh 1, 2... đã thể hiện trên sh TongHop.
Còn lại sao không dùng right(Cell("filename",a1),2)*= số tên sheet = X (nhớ là nên là 01, 02...,30)
=> Sum(offset(...,0,0,1,X). Xin góp ý như vậy.
 
Theo em thì sửa chút ct của Bác ndu96081631 như dưới:

Mã:
=IF(ShIndex-1=0,0,INDIRECT("'"&INDEX(AllSh,,ShIndex-1)&"'!F"&ROW()))+E5
Mã:
=AVERAGE(E7,IF(ShIndex-1=0,E7,INDIRECT("'"&INDEX(AllSh,,ShIndex-1)&"'![COLOR=Red]F[/COLOR]"&ROW())))

CT thứ hai phải là cột F mới đúng Bác ndu96081631 à.
 
Theo em thì sửa chút ct của Bác ndu96081631 như dưới:

Mã:
=IF(ShIndex-1=0,0,INDIRECT("'"&INDEX(AllSh,,ShIndex-1)&"'!F"&ROW()))+E5
Mã:
=AVERAGE(E7,IF(ShIndex-1=0,E7,INDIRECT("'"&INDEX(AllSh,,ShIndex-1)&"'![COLOR=Red]F[/COLOR]"&ROW())))
CT thứ hai phải là cột F mới đúng Bác ndu96081631 à.
 

File đính kèm

  • Tongnhieusheet_03.xls
    24.5 KB · Đọc: 35
Lần chỉnh sửa cuối:
Bạn Salam thêm IF đàng trước để làm gì vậy?
Tôi đoán là bạn làm vậy để gỏ công thức vào sheet đầu tiên luôn, đúng ko? Thấy cũng đâu cần thiết nhỉ?
 
Bạn Salam thêm IF đàng trước để làm gì vậy?
Tôi đoán là bạn làm vậy để gỏ công thức vào sheet đầu tiên luôn, đúng ko? Thấy cũng đâu cần thiết nhỉ?
Đúng đó Bác xài luôn CT từ sheet đầu.

Sao mà vào GPE làm sao ý nhỉ.
 
Hi ndu96081631, thunghi, salam, anhtuan1066

Cảm ơn các bác nhiều lắm, nhưng các công thức các bác dùng mình mở không được trong Excel 2003 àh. Có cách nào dùng công thức ít "cao siêu" hơn (hi, chắc chắn là dài dòng hơn rồi) để excel 2003 hiểu được không vậy?

Mình mới học được của anhtuan1066 công thức lấy tên sheet rất hay là:
=MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1),1)+1,200)

Tên sheet mình dùng số "1", "2".., thì mình thay công thức

F5=SUM(E5, '1'!F5)

bằng công thức

F5=SUM(E5, 'MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1),1)+1,200)-1'!F5)

thì có sự lẫn lộn trong này, hàm sum lỗi và không được chấp nhận.
Các bác giúp em với.
 
Hi ndu96081631, thunghi, salam, anhtuan1066
Cảm ơn các bác nhiều lắm, nhưng các công thức các bác dùng mình mở không được trong Excel 2003 àh.
Tôi bảo đãm là mở dc, vì tôi đang dùng Excel2003 đây, có sao đâu!
Chẳng qua chế độ Security của bạn đang set chế độ High thì có trời mới chạy dc (đã nói 2 lần rồi mà bạn vẩn ko chịu sửa lổi này)... Sửa xong nó chạy vèo vèo chứ gì
Có cách nào dùng công thức ít "cao siêu" hơn (hi, chắc chắn là dài dòng hơn rồi) để excel 2003 hiểu được không vậy?
Tinh giản bớt rất nhiều rồi đấy (nếu dùng VBA chắc đơn giản nhưng lại càng cao siêu hơn)
Thay vì bạn cố gắng làm cho công thức bớt "cao siêu" sao bạn ko thử cố gắng hiểu nó và làm cho mình ngày càng "cao siêu" hơn!
He... he...
Mình mới học được của anhtuan1066 công thức lấy tên sheet rất hay là:
=MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1),1)+1,200)

Tên sheet mình dùng số "1", "2".., thì mình thay công thức

F5=SUM(E5, '1'!F5)

bằng công thức

F5=SUM(E5, 'MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1),1)+1,200)-1'!F5)

thì có sự lẫn lộn trong này, hàm sum lỗi và không được chấp nhận.
Các bác giúp em với.
Công thức này mà chạy dc mới ghê đó! Chẳng qua ai đó có nhu cầu lấy tên của ActiveSheet thì dùng cái này cho gọn!
Tùy chuyện chứ bạn!
 
Thay vì bạn cố gắng làm cho công thức bớt "cao siêu" sao bạn ko thử cố gắng hiểu nó và làm cho mình ngày càng "cao siêu" hơn!
He... he...
Hi, anhtuan1066.

Bạn nói chí phải chí phải, tất cả OK rồi. Thanks các bạn rất nhiều. Mình đang cày quyển ebook của GPE đây...

Thanks all,
 
Tôi sửa công thức lại theo cấp độ đơn giản nhất!
Bạn xem thử có hài lòng không nha (dùng công thức MID(...) lấy tên sheet như bạn đã nói
 

File đính kèm

  • Tongnhieusheet_04.xls
    22.5 KB · Đọc: 64
Ngắn hơn nữa thì:
PHP:
Pre =MID(CELL("filename"),FIND("]",CELL("filename"))+1,255)-1
 
Ngắn hơn nữa thì:
PHP:
Pre =MID(CELL("filename"),FIND("]",CELL("filename"))+1,255)-1
Đúng vậy! Nhưng trong 1 vài trường hợp thì khả năng cập nhật của nó lại rất kém
Đâu phải ngẩu nhiên người ta cho INDIRECT hoặc NOW vào!
 
Hic hic
Tại có bạn thích ngắn mà
Lẽ đương nhiên càng ngẵn, càng đơn giản thì hiệu quả của nó cũng kéo theo
Vận dụng cái nào cho hiệu quả còn tùy vào từng trường hợp cụ thể
 
Web KT
Back
Top Bottom