Hàm indirect sử dụng như thế nào? (1 người xem)

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

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

linhb

Thành viên mới
Tham gia
5/1/08
Bài viết
8
Được thích
5
Tớ đã down file các hàm trong excel, tớ đang đọc cách sử dụng hàm indirect. Bây giờ tớ muốn ở sheet "TH" tổng hợp các giá trị từ ô C2 đến ô C10 của 3 sheet có tên là T1, T2, T3 và giả sử là tớ đã gõ T1, T2, T3 vào 3 ô là A1, A2, A3 của sheet TH rồi. Bây giờ tớ muốn kết hợp hàm Sum và Indirect nhưng hic chẳng biết làm thế nào cả. Nếu tổng hợp các giá trị từ ô C2 đến C10 của 1 sheet thì tớ đã biết làm!!$@!!
 
Có vài góp ý:

- Thứ nhất, bạn nên trình bày cái ví dụ này trong một file Excel, rồi ghi các yêu cầu trong đó, sau đó gửi lên diễn đàn. Ai có khả năng sẽ tải file của bạn về, nghiên cứu và trả lời. Chứ bạn nghĩ xem, cách bạn hỏi như trên, bắt người muốn trả lời phải tự tay làm một bảng tính ví dụ, vậy có phải là phiền cho họ không ?

- Thứ hai, bạn nên xem lại cách xưng hô trong diễn đàn. Nếu bạn không chắc mình lớn hay nhỏ hơn ai, tôi nghĩ bạn nên xưng là tôi. Đừng xưng tớ.

- Thứ ba, lần sau, bạn nên đặt tên tiêu đề cho rõ ràng, đừng viết tắt. Trong nội quy đã ghi rõ điều đó. Tôi hiểu "ntn" là cái gì, nhưng đâu phải ai cũng hiểu, phải không bạn.

Thân.
BNTT
 
Cám ơn bạn đã góp ý, tôi sẽ chú ý hơn lần sau! Tôi có down 1 file của Salam có sử dụng hàm indirect nhưng vẫn ko hiểu rõ lắm! Tôi xin gửi kèm theo file dưới đây! Bạn có thể giải thích giùm tôi không? Thanks U so much!
 

File đính kèm

Đây là bảng tính mà bạn gửi lên. Tôi để ở đây để vừa nhìn vừa nói nhé.
046.jpg
Công thức bạn muốn hỏi có phải là công thức của ô C6, ở trên thanh formulas không ?
=SUMPRODUCT(SUMIF(INDIRECT($G$1:$G$4&"!A8:A100"),A6,INDIRECT($G$1:$G$4&"!C8:C100")))
Dịch nôm na ra thì nó có nghĩa như sau:
Để tìm tổng số Nợ của tài khoản ở ô A6 (342), thì đi dò trong khối cell A8:A100 của các Sheet có tên trùng với tên trong khối cell G1:G4 (Thang1, Thang2, Thang3, Thang4), nếu thấy có tài khoản giống như ở A6, thì cộng hết số tiền nằm cùng hàng (với tài khoản giống như ở A6) trong khối cell C8:C100 trong các Sheet có tên trùng với tên trong khối cell G1:G4.​
Để coi A8:A100 và C8:C100 là cái gì, xem hình sau đây, nó là Sheet Thang1 (3 Sheet còn lại y chang như vậy):
047.jpg
Có lẽ bạn đã hiểu SUMIF() làm cái gì. Xin bỏ qua.

Cái hay của hàm này là dùng SUMPRODUCT kẹp bên ngoài của SUMIF, có tác dụng cộng hết những gì SUMIF tìm được ở mỗi Sheet.
Nếu không dùng SUMPRODUCT mà chỉ lấy phần trong của nó (từ chỗ SUMIF trở đi), và nhấn Ctrl-Shift-Enter để tạo công thức mãng, thì cái bạn nhận được chỉ là kết quả của cái SUMIF tìm được ở Sheet đầu tiên mà thôi (trong trường hợp này thì nó chỉ tìm ở Sheet Thang1, rồi dừng lại).

Bạn muốn hỏi về INDIRECT() phải không?
Hàm INDIRECT

Trả về một tham chiếu từ chuỗi ký tự. Tham chiếu được trả về ngay tức thời để hiển thị nội dung của chúng. Cũng có thể dùng hàm INDIRECT khi muốn thay đổi tham chiếu tới một ô bên trong một công thức mà không cần thay đổi công thức đó.
Cú pháp: = INDIRECT(ref_text [, a1])
ref_text là tham chiếu tới một ô (có thể là dạng A1 hoặc dạng R1C1), là tên định nghĩa của một tham chiếu, hoặc là một tham chiếu dạng chuỗi.
  • Nếu ref_text không hợp lệ, INDIRECT() sẽ báo lỗi #REF!
  • Nếu ref_text chứa tham chiếu đến một bảng tính khác thì bảng tính này phải đang mở, nếu không, INDIRECT() cũng báo lỗi #REF!
a1 là giá trị logic xác định dạng tham chiếu bên trong ref_text.
  • a1 = TRUE (hoặc là 1, hoặc không nhập) là kiểu tham chiếu A1
  • a1 = FALSE (hoặc là 2) là kiểu tham chiếu R1C1

Trong trường hợp cụ thể này, INDIRECT không dùng tham số a1, nghĩa là dùng kiểu tham chiếu A1.
Tôi giải thích một cái thôi, còn cái thứ hai thì bạn tự suy ra nhé:
INDIRECT($G$1:$G$4&"!A8:A100")
Vì nằm trong hàm SUMPRODUCT, nên công thức trên sẽ chạy như một công thức mãng, nó sẽ lần lượt thay thế cái nó tìm được ở khối cell G1:G4 với (dấu & có tác dụng ghép lại) cái ở trong cặp ngoặc kép (!A8:A100), cụ thể là:
INDIRECT($G$1:$G$4&"!A8:A100") khi chạy sẽ giống như chạy 4 hàm đơn:
  • INDIRECT($G$1&"!A8:A100") = Thang1!A8:A100
  • INDIRECT($G$2&"!A8:A100") = Thang2!A8:A100
  • INDIRECT($G$3&"!A8:A100") = Thang3!A8:A100
  • INDIRECT($G$4&"!A8:A100") = Thang4!A8:A100
Cái dấu chấm than (!) là ký hiệu để Excel biết rằng A8:A100 nằm trong Sheet nào.

Hay nói cách khác:
INDIRECT($G$1:$G$4&"!A8:A100") = {Thang1!A8:A100; Thang2!A8:A100; Thang3!A8:A100; Thang4!A8:A100}​
Sau đó công thức sẽ dùng cái INDIRECT đã thay thế này làm tham số cho SUMIF đi tìm tiếp.

Tới đây thì bạn hiểu rồi chứ ?
 
Hàm indirect

Đây là bảng tính mà bạn gửi lên. Tôi để ở đây để vừa nhìn vừa nói nhé.
=SUMPRODUCT(SUMIF(INDIRECT($G$1:$G$4&"!A8:A100"),A6,INDIRECT($G$1:$G$4&"!C8:C100")))
Dịch nôm na ra thì nó có nghĩa như sau:
Để tìm tổng số Nợ của tài khoản ở ô A6 (342), thì đi dò trong khối cell A8:A100 của các Sheet có tên trùng với tên trong khối cell G1:G4 (Thang1, Thang2, Thang3, Thang4), nếu thấy có tài khoản giống như ở A6, thì cộng hết số tiền nằm cùng hàng (với tài khoản giống như ở A6) trong khối cell C8:C100 trong các Sheet có tên trùng với tên trong khối cell G1:G4.​
Hiểu ý bác rõ ràng./.



Cái hay của hàm này là dùng SUMPRODUCT kẹp bên ngoài của SUMIF, có tác dụng cộng hết những gì SUMIF tìm được ở mỗi Sheet.
Nếu không dùng SUMPRODUCT mà chỉ lấy phần trong của nó (từ chỗ SUMIF trở đi), và nhấn Ctrl-Shift-Enter để tạo công thức mãng, thì cái bạn nhận được chỉ là kết quả của cái SUMIF tìm được ở Sheet đầu tiên mà thôi (trong trường hợp này thì nó chỉ tìm ở Sheet Thang1, rồi dừng lại).
Không hiểu vì em tách công thức với SUMIF ra riêng thì nó báo lỗi #Value. Bác giải thích thêm được không ạ mặc dù em hiểu rõ hàm SUMIF là thế nào!

Bạn muốn hỏi về INDIRECT() phải không?

Trong trường hợp cụ thể này, INDIRECT không dùng tham số a1, nghĩa là dùng kiểu tham chiếu A1.
Tôi giải thích một cái thôi, còn cái thứ hai thì bạn tự suy ra nhé:
INDIRECT($G$1:$G$4&"!A8:A100")
Vì nằm trong hàm SUMPRODUCT, nên công thức trên sẽ chạy như một công thức mãng, nó sẽ lần lượt thay thế cái nó tìm được ở khối cell G1:G4 với (dấu & có tác dụng ghép lại) cái ở trong cặp ngoặc kép (!A8:A100), cụ thể là:
INDIRECT($G$1:$G$4&"!A8:A100") khi chạy sẽ giống như chạy 4 hàm đơn:
  • INDIRECT($G$1&"!A8:A100") = Thang1!A8:A100
  • INDIRECT($G$2&"!A8:A100") = Thang2!A8:A100
  • INDIRECT($G$3&"!A8:A100") = Thang3!A8:A100
  • INDIRECT($G$4&"!A8:A100") = Thang4!A8:A100
Cái dấu chấm than (!) là ký hiệu để Excel biết rằng A8:A100 nằm trong Sheet nào.

Hay nói cách khác:
INDIRECT($G$1:$G$4&"!A8:A100") = {Thang1!A8:A100; Thang2!A8:A100; Thang3!A8:A100; Thang4!A8:A100}​
Sau đó công thức sẽ dùng cái INDIRECT đã thay thế này làm tham số cho SUMIF đi tìm tiếp.

Tới đây thì bạn hiểu rồi chứ ?
[/color]

Em thấy rất hay nhưng không hiểu được thế nào?

:-=:-=:-=:-=
 
Ai chà... trong này tuy ko thấy chổ nào là mãng, nhưng mà có sự tồn tại của mãng đấy!
Cái vụ mãng này khá trừu tượng... Hể hiểu dc thì.. hiểu.. còn ko thì... Hic... Hic... Ko biết giãi thích đến bao giờ...
Tốt nhất là làm nhiều, thí nghiệm nhiều.. dần dần sẽ hiểu...
Bạn có thể tham khảo thêm về mãng tại đây nhé:
http://www.giaiphapexcel.com/forum/showthread.php?t=7917
ANH TUẤN
 
Hiểu ý bác rõ ràng./.

Em thấy rất hay nhưng không hiểu được thế nào?

:-=:-=:-=:-=

Bạn đừng lo lắng nhiều. Kiến thức sẽ dần đến khi bạn chú tâm đến nó. Quả thực nói đến công thức mảng là phải nói đến sự tinh hoa và huyền bí. Nó như ma thuật vậy...và đòi hỏi cả tưởng tượng nữa.

Lúc đầu minh hoa mắt chóng mặt nhưng cứ cố gắng đọc và hỏi...dần dần mình cũng vỡ ra nhiều đấy bạn ạ.

Cố lên nhé
 
Hic, đúng là khó hiểu thật. Cái đoạn này là thấy khó hiểu nhất đấy:

INDIRECT($G$1:$G$4&"!A8:A100") khi chạy sẽ giống như chạy 4 hàm đơn:
  • INDIRECT($G$1&"!A8:A100") = Thang1!A8:A100
  • INDIRECT($G$2&"!A8:A100") = Thang2!A8:A100
  • INDIRECT($G$3&"!A8:A100") = Thang3!A8:A100
  • INDIRECT($G$4&"!A8:A100") = Thang4!A8:A100
Rõ ràng là ở công thức tổng toàn là các giá trị cố định mà sao nó lại có tác dụng cho 4 sheet được. Trìu tượng quá rùi hic hic
 
Hic, đúng là khó hiểu thật. Cái đoạn này là thấy khó hiểu nhất đấy:

INDIRECT($G$1:$G$4&"!A8:A100") khi chạy sẽ giống như chạy 4 hàm đơn:

* INDIRECT($G$1&"!A8:A100") = Thang1!A8:A100
* INDIRECT($G$2&"!A8:A100") = Thang2!A8:A100
* INDIRECT($G$3&"!A8:A100") = Thang3!A8:A100
* INDIRECT($G$4&"!A8:A100") = Thang4!A8:A100

Bạn mở file bài 3 lên, hoặc xem cái hình 1 bài 4, xem những ô tôi tô đỏ, chứa cái gì ở trong?
 
Cách sử dụng hàm indirect

Chào các Anh/chị

Để tính tổng tại các ô [A1] của các sheet t1 đến t4, tại sheet "th" tôi sử dụng công thức mãng sum(indirect()) thì kết quả chỉ lấy của sheet t1. Còn dùng hàm sumproduct(sum(indirect())) thì báo lỗi N/A. Nhờ mọi người sửa dùm.


Thân
XC3
 

File đính kèm

Chào các Anh/chị

Để tính tổng tại các ô [A1] của các sheet t1 đến t4, tại sheet th; tôi sử dụng công thức mãng sum(indirect()) thì kết quả chỉ lấy của sheet t1. Còn dùng hàm sumproduct(sum(indirect())) thì báo lỗi N/A. Nhờ mọi người sửa dùm.


Thân
XC3
Bạn dùng SUMPRODUCT chung với SUMIF và INDIRECT thì sẽ được:
=SUMPRODUCT(SUMIF(INDIRECT($F$1:$F$4&"!$a$1"),"<>0"))​
Nếu những ô A1 trong các Sheet từ t1 đến t4 mà khác 0, thì cộng chúng lại với nhau.
 
Chào các Anh/chị

Để tính tổng tại các ô [A1] của các sheet t1 đến t4, tại sheet &quot;th&quot; tôi sử dụng công thức mãng sum(indirect()) thì kết quả chỉ lấy của sheet t1. Còn dùng hàm sumproduct(sum(indirect())) thì báo lỗi N/A. Nhờ mọi người sửa dùm.


Thân
XC3
Bạn dùng ct dưới nhé.
Mã:
=SUMPRODUCT(N(INDIRECT($F$1:$F$4&"!$a$1")))
 
Bạn dùng ct dưới nhé.
Mã:
=SUMPRODUCT(N(INDIRECT($F$1:$F$4&"!$a$1")))
Hay thật. Mình cũng có ý định là đổi mấy giá trị do INDIRECT trả về thành giá trị thực, rồi mới SUMPRODUCT, nghĩ mãi hổng nhớ hàm N. Nên mới dựng lên cái chuyện dùng SUMIF để cộng những số khác 0.
 
Đây là bảng tính mà bạn gửi lên. Tôi để ở đây để vừa nhìn vừa nói nhé.
046.jpg
Công thức bạn muốn hỏi có phải là công thức của ô C6, ở trên thanh formulas không ?
=SUMPRODUCT(SUMIF(INDIRECT($G$1:$G$4&"!A8:A100"),A6,INDIRECT($G$1:$G$4&"!C8:C100")))
Dịch nôm na ra thì nó có nghĩa như sau:
Để tìm tổng số Nợ của tài khoản ở ô A6 (342), thì đi dò trong khối cell A8:A100 của các Sheet có tên trùng với tên trong khối cell G1:G4 (Thang1, Thang2, Thang3, Thang4), nếu thấy có tài khoản giống như ở A6, thì cộng hết số tiền nằm cùng hàng (với tài khoản giống như ở A6) trong khối cell C8:C100 trong các Sheet có tên trùng với tên trong khối cell G1:G4.​

Để coi A8:A100 và C8:C100 là cái gì, xem hình sau đây, nó là Sheet Thang1 (3 Sheet còn lại y chang như vậy):
047.jpg
Có lẽ bạn đã hiểu SUMIF() làm cái gì. Xin bỏ qua.

Cái hay của hàm này là dùng SUMPRODUCT kẹp bên ngoài của SUMIF, có tác dụng cộng hết những gì SUMIF tìm được ở mỗi Sheet.
Nếu không dùng SUMPRODUCT mà chỉ lấy phần trong của nó (từ chỗ SUMIF trở đi), và nhấn Ctrl-Shift-Enter để tạo công thức mãng, thì cái bạn nhận được chỉ là kết quả của cái SUMIF tìm được ở Sheet đầu tiên mà thôi (trong trường hợp này thì nó chỉ tìm ở Sheet Thang1, rồi dừng lại).

Bạn muốn hỏi về INDIRECT() phải không?

Trong trường hợp cụ thể này, INDIRECT không dùng tham số a1, nghĩa là dùng kiểu tham chiếu A1.
Tôi giải thích một cái thôi, còn cái thứ hai thì bạn tự suy ra nhé:
INDIRECT($G$1:$G$4&"!A8:A100")
Vì nằm trong hàm SUMPRODUCT, nên công thức trên sẽ chạy như một công thức mãng, nó sẽ lần lượt thay thế cái nó tìm được ở khối cell G1:G4 với (dấu & có tác dụng ghép lại) cái ở trong cặp ngoặc kép (!A8:A100), cụ thể là:
INDIRECT($G$1:$G$4&"!A8:A100") khi chạy sẽ giống như chạy 4 hàm đơn:
  • INDIRECT($G$1&"!A8:A100") = Thang1!A8:A100
  • INDIRECT($G$2&"!A8:A100") = Thang2!A8:A100
  • INDIRECT($G$3&"!A8:A100") = Thang3!A8:A100
  • INDIRECT($G$4&"!A8:A100") = Thang4!A8:A100
Cái dấu chấm than (!) là ký hiệu để Excel biết rằng A8:A100 nằm trong Sheet nào.

Hay nói cách khác:
INDIRECT($G$1:$G$4&"!A8:A100") = {Thang1!A8:A100; Thang2!A8:A100; Thang3!A8:A100; Thang4!A8:A100}​
Sau đó công thức sẽ dùng cái INDIRECT đã thay thế này làm tham số cho SUMIF đi tìm tiếp.

Tới đây thì bạn hiểu rồi chứ ?
[/COLOR]

vậy có cách nào khác mà không phải tạo thêm khối G1:G4 không hả thầy?
 
không biết hàm INDIRECT có làm được như vậy không?
INDIRECT('C:\Users\phpvnn\Desktop\FILE\[f1.xlsx]baitap_5'!$A3)
thông thường tôi chỉ thấy hàm INDIRECT chỉ link kết trong 1 file
còn liên kết tới file khác cho dù mình chỉ đường dẫn nó vẫn ra #REF
không biết có cách nào cho hàm INDIRECT lấy được dữ liệu từ những file khác không? xin được ý kiếm của các cao thủ, xin cảm ơn
 
không biết hàm INDIRECT có làm được như vậy không?
INDIRECT('C:\Users\phpvnn\Desktop\FILE\[f1.xlsx]baitap_5'!$A3)
thông thường tôi chỉ thấy hàm INDIRECT chỉ link kết trong 1 file
còn liên kết tới file khác cho dù mình chỉ đường dẫn nó vẫn ra #REF
không biết có cách nào cho hàm INDIRECT lấy được dữ liệu từ những file khác không? xin được ý kiếm của các cao thủ, xin cảm ơn
KHÔNG ĐƯỢC
INDIRECT không thể liên kết với file đang đóng đâu bạn à (cái này nói nhiều rồi)
 
không biết hàm INDIRECT có làm được như vậy không?
INDIRECT('C:\Users\phpvnn\Desktop\FILE\[f1.xlsx]baitap_5'!$A3)
thông thường tôi chỉ thấy hàm INDIRECT chỉ link kết trong 1 file
còn liên kết tới file khác cho dù mình chỉ đường dẫn nó vẫn ra #REF
#REF vì sử dụng hàm Indirect sai cách.
Cú pháp:
=Indirect(chuỗi)

dữ liệu chuỗi khác với tham chiếu.

Ngoài ra, khi file đang đóng cũng không lấy được.
 
Nếu tên Sheet có dấu cách thì dùng Indirect thế nào. Xin xem file đính kèm, Sheet cuối cùng

Cũng nhờ các anh chỉ cách hiện các cột của Sheet B 2.

Bạn sửa cell E5 thành vầy là được: ''a 1'!C2:D10
Chú ý chổ màu đỏ là 2 dấu nháy đơn chứ không phải 1 dấu nháy đôi nha
-------------
Nguyên tắc chung để viết 1 chuổi chứa tham chiếu là: 'Tên sheet'!Địa chỉ
Luôn luôn có cặp dấu nháy đơn bao đầu và cuối tên sheet thì khi đưa vào INDIRECT sẽ không bị lỗi
 
Lần chỉnh sửa cuối:
Cảm ơn bác.
Nhưng vẫn không được bác àh. Vẫn bị ra #REF! **~**
 
Anh BNNT cho em hỏi chút nếu em chỉ muốn tính tổng giá trị từ C8:C100 của tất cacr các sheet thì em sẽ dùng công thức
=SUMPRODUCT(INDIRECT($G$1:$G$4&"!C8:C100")) phải không ah?
 
Anh BNNT cho em hỏi chút nếu em chỉ muốn tính tổng giá trị từ C8:C100 của tất cacr các sheet thì em sẽ dùng công thức
=SUMPRODUCT(INDIRECT($G$1:$G$4&"!C8:C100")) phải không ah?

 
Đây là bảng tính mà bạn gửi lên. Tôi để ở đây để vừa nhìn vừa nói nhé.
046.jpg
Các bác cho tôi hỏi trên bảng tính này ở phần góc bên trái có 2 cột nhỏ 1 và 2 có nút + và - để làm j vậy ạ. 2 cột đó có tác dụng gì, cách làm thế nào và tìm đọc thêm ở đâu.
Cái này là chức năng Group and Outline trong menu Data (Excel 2003) mình thường hay sử dụng trong file theo dõi tài sản cố định để nhóm các loại tài sản lại
 
Xin chào mọi người! Mình có một công việc là hàng ngày phải đi lĩnh thuốc và cuối tháng phải tổng hợp lại. và mình đã làm mỗi sheet thành một phiếu lĩnh thuốc trong ngày. trong tháng có 30 ngày như vậy là có 30 sheet và mình đã đặt tên chúng là N1 đến N31. sau đó cuối tháng tổng hợp lại thành một Sheet là TỔNG CỘNG. yêu cầu là tại sheet tổng cộng đi kiểm tra lần lượt từ sheet N1 đến N31 có tên thuốc nào đã nhập xuất thì ghi tên vào sheet tổng sau đó tính tổng số đã nhập, tổng số xuất của từng loại. Kính mong các bạn giúp mình với. mình làm mãi không được, mà chẳng biết hỏi ai. rất mong các bạn giúp. minh có gủi file đính kèm nhe. mong các bạn giúp mình với
 

File đính kèm

Xin chào mọi người! Mình có một công việc là hàng ngày phải đi lĩnh thuốc và cuối tháng phải tổng hợp lại. và mình đã làm mỗi sheet thành một phiếu lĩnh thuốc trong ngày. trong tháng có 30 ngày như vậy là có 30 sheet và mình đã đặt tên chúng là N1 đến N31. sau đó cuối tháng tổng hợp lại thành một Sheet là TỔNG CỘNG. yêu cầu là tại sheet tổng cộng đi kiểm tra lần lượt từ sheet N1 đến N31 có tên thuốc nào đã nhập xuất thì ghi tên vào sheet tổng sau đó tính tổng số đã nhập, tổng số xuất của từng loại. Kính mong các bạn giúp mình với. mình làm mãi không được, mà chẳng biết hỏi ai. rất mong các bạn giúp. minh có gủi file đính kèm nhe. mong các bạn giúp mình với
ở sheet tổng cộng , Cột mặt hàng kho A , bạn điền vào mã hàng Thuốc 2,3, 4, 5. Ỏ G4:G6 bạn ghi N1 đến N3 rồi dùng công thức
Mã:
=SUMPRODUCT(SUMIF(INDIRECT($G$4:$G$6&"!$B$4:$B$5000"),B4,INDIRECT($G$4:$G$6&"!$G$4:$G$5000")))
=SUMPRODUCT(SUMIF(INDIRECT($G$4:$G$6&"!$B$4:$B$5000"),B6,INDIRECT($G$4:$G$6&"!$k$4:$k$5000")))
Trên là Tổng lĩnh, công thức dưới là hoàn trả,
Còn muốn lấy tự động có khi phải dùng code
 
Các bản giải thích giúp mình về hàm Indirec trong file này với. Mình đọc mãi mà vẫn không hiểu.

Cảm ơn các bạn.
 

File đính kèm

  • Ham Indirect.jpg
    Ham Indirect.jpg
    61.5 KB · Đọc: 142
Xin chào các pro, Mình muốn hỏi chút xíu là nếu cái tên sheet có ký tự khoảng trắng hoạch là dấu ngoặc đơn vi du như "Ngay sinh" hoặc là "ngay(1)" thì phải xử lý thế nào ạ, mình làm nó cứ báo #ref
Mình viết thế này chuẩn không? =INDIRECT("abc("&(ROW()+1)&")"&"!a3"), với abc là một phần của tên sheet và row +1 là để tính chỉ số của sheet. sheet mình tên là abc(2) ví dụ vậy. chỉ số bao nhiêu thì tùy trường hợp? mong các pro chỉ giúp nghen.Cảm ơn nhiều :)
 
Xin chào các pro, Mình muốn hỏi chút xíu là nếu cái tên sheet có ký tự khoảng trắng hoạch là dấu ngoặc đơn vi du như "Ngay sinh" hoặc là "ngay(1)" thì phải xử lý thế nào ạ, mình làm nó cứ báo #ref
Mình viết thế này chuẩn không? =INDIRECT("abc("&(ROW()+1)&")"&"!a3"), với abc là một phần của tên sheet và row +1 là để tính chỉ số của sheet. sheet mình tên là abc(2) ví dụ vậy. chỉ số bao nhiêu thì tùy trường hợp? mong các pro chỉ giúp nghen.Cảm ơn nhiều :)
Bạn sửa thế này nhé
Mã:
=INDIRECT("[COLOR=#ff0000][B]'[/B][/COLOR]abc("&(ROW()+1)&")"&"[COLOR=#ff0000][B]'[/B][/COLOR]!a3")
 
Nhờ ACE xem giúp sao file minh dùng indirect lại không tìm được 3 sheet tô vàng
 

File đính kèm

Nhờ ACE xem giúp sao file minh dùng indirect lại không tìm được 3 sheet tô vàng
Bạn sửa lại hàm thế này thử xem
Mã:
=SUMIFS(INDIRECT("[COLOR=#ff0000][B]'[/B][/COLOR]"&$C7&""&"[COLOR=#ff0000][B]'[/B][/COLOR]!"&J$4),INDIRECT("[COLOR=#ff0000][B]'[/B][/COLOR]"&$C7&""&"[COLOR=#ff0000][B]'[/B][/COLOR]!"&"$B$5:$B$14"),$H7)
 
Nhờ ACE xem giúp sao CT bị sai chỗ nào trong file đính kèm

D2=SUMIFS(address(1,column(D$1),2,1,""&$J2&"")&":"&address(1,column(D$1),2,1),indirect("'"&$J2&"'!$A$2:$A$10"),$A2,indirect("'"&$J2&"'!$B$2:$B$10"),$B2,indirect("'"&$J2&"'!$C$2:$C$10"),$C2)
 

File đính kèm

Nhờ ACE xem giúp sao CT bị sai chỗ nào trong file đính kèm

D2=SUMIFS(address(1,column(D$1),2,1,""&$J2&"")&":"&address(1,column(D$1),2,1),indirect("'"&$J2&"'!$A$2:$A$10"),$A2,indirect("'"&$J2&"'!$B$2:$B$10"),$B2,indirect("'"&$J2&"'!$C$2:$C$10"),$C2)

Công thức tại D2:
Mã:
=SUMIFS(INDIRECT($J2&"!"&ADDRESS(2,COLUMN(D$1))&":"&ADDRESS(10,COLUMN(D$1))),INDIRECT($J2&"!"&ADDRESS(2,COLUMN($A$1))&":"&ADDRESS(10,COLUMN($A$1))),$A2,INDIRECT($J2&"!"&ADDRESS(2,COLUMN($B$1))&":"&ADDRESS(10,COLUMN($B$1))),$B2,INDIRECT($J2&"!"&ADDRESS(2,COLUMN($C$1))&":"&ADDRESS(10,COLUMN($C$1))),$C2)
Fill phải/ xuống!
 
nhờ ace xem giúp sao ct bị sai chỗ nào trong file đính kèm

d2=sumifs(address(1,column(d$1),2,1,""&$j2&"")&":"&address(1,column(d$1),2,1),indirect("'"&$j2&"'!$a$2:$a$10"),$a2,indirect("'"&$j2&"'!$b$2:$b$10"),$b2,indirect("'"&$j2&"'!$c$2:$c$10"),$c2)
Mã:
d2 =sumifs(indirect(address(2,column(d$1),2,1,$j2)&":"&address(10,column(d$1),2,1)),indirect($j2&"!$a$2:$a$10"),$a2,indirect($j2&"!$b$2:$b$10"),$b2,indirect($j2&"!$c$2:$c$10"),$c2)
 
Cả 2 CT của befaint & hieucd đều ra #REF!

2 bạn xem lại giúp mình với
 
Cả 2 CT của befaint & hieucd đều ra #REF!

2 bạn xem lại giúp mình với

xem thử công thức này xem sao
D2=SUMIFS(OFFSET(INDIRECT("'"&$J2&"'!D$2:D$10"),,COLUMN()-4),INDIRECT("'"&$J2&"'!$A$2:$A$10"),$A2,INDIRECT("'"&$J2&"'!$B$2:$B$10"),$B2,INDIRECT("'"&$J2&"'!$C$2:$C$10"),$C2)
fill cho cả vùng nhé.
 
Mọi người cho hỏi nếu tại ô A1 chứa văn bản có nội dung "ví dụ"
Có cách nào để sử dụng giống như Indirect(A1) thì kết quả cho ra là "ví dụ"
Cảm ơn mọi người.
 

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

Back
Top Bottom