Diễn đàn Kiến thức Excel Những bài viết tổng hợp của Giải Pháp Excel Hàm Offset và Validation Ðề tài: Hàm Offset và Validation Phát hành sách "VBA trong Excel - Cải thiện và tăng tốc - năm 2013" Phát động CT "Chia sẻ khó khăn miền biên giới” tại Bát Đại Sơn - Quản Bạ - HG Đăng ký dự SN GPE lần 7: Hà Nội - TP. HCM - Đà Nẵng ThoátKhung điều chỉnhHồ sơ của bạnLưu ý: 4bang_tt Trang chủ Thành viên Có Bài mới Nhắn tin Hỏi/Ðáp Lịch Cộng đồng Chọn lệnh Chức năng Công cụ Download Google Search Tìm kiếm chi tiết Hiển thị kết quả tìm kiếm từ 1 đến 3 trên tổng số: 3 Ðiều chỉnh Tìm trong đề tài Kiểu xem 10-08-08, 10:50 PM Tham gia ngày: Nơi Cư Ngụ: Bài gởi: Cảm ơn: Được cảm ơn 19,372 lần trong 3,924 bài viết 07 2007 Dalat 4,867 4,306 Công thức này: Nếu đã dùng Excel2007 để làm, thì tại sao không dùng IFERROR: =IFERROR(INDEX(OS, SMALL(IF(MATCH(OS, OS, 0) = ROW(INDIRECT("1:" & ROWS(OS))), MATCH(OS, OS, 0), ""), ROW(INDIRECT("1:" & ROWS(OS))))),"") thay đổi nội dung bởi: TranThanhPhong , 09-12-08 lúc 09:05 PM Lý do: đề tài đóng Tra cứu hàm Excel | Công thức và Hàm trong Excel 2007 | Các hàm của Analysis Toolpak Addin | Những tuyệt chiêu trong Excel | Hướng dẫn sử dụng Options Excel 2007 | Hướng dẫn sử dụng Options Excel 2010 | Thay thái độ, đổi cuộc đời | Nên đọc trước khi gửi một câu hỏi hoặc tạo mới môt đề tài | PivotTable & PivotChart 2007 - Từ căn bản đến nâng cao | Góp ý với các bài viết của BNTT Dành cho những ai thích nghe Piano #3 Bùi Nguyễn Triệu Tường BNTT =IF(ISERR(INDEX(OS,SMALL(IF(MATCH(OS,OS,0)=ROW(IND IRECT("1:"&ROWS(OS))), MATCH(OS,OS,0),""),ROW(INDIRECT("1:"&ROWS(OS)))))) ,"", INDEX(OS,SMALL(IF(MATCH(OS,OS,0)=ROW(INDIRECT("1:" &ROWS(OS))), MATCH(OS,OS,0),""),ROW(INDIRECT("1:"&ROWS(OS)))))) Cảm ơn Có 53 thành viên cảm ơn BNTT về bài viết này: 2337, alexdoan, chuoixao, cloudy1012, conmalangtu_ndt, dash177, dinhphuong9327, duyle86, Gbco, gia nguyên, Hai Xuan, heocon405, hoangtechu, hoavth, hongnhungpx, jindoxaydung, jv251285, khaixmen, lacbuidoi, lam273, lehoaithanh, leonardo208, LIENTHUYTHANH, linhngoc, logica, lsxinh, luanvien177, NgNgocMinhKt, ngocmaidaiquoc24483, Obalike, oliverlely, phnam77, phuonghdbank, soiconkthn, songvui, son_sajv, thangbx, tigerss, TKT, tpthuonghoai, trung78952, TranThanhPhong, tuoitrevietnam, tuvuduy, van_thanh_phong, virgin2010, XeBaGac, xuan.nguyen82, xuannguyen12012, yeuthamhangxom 13-10-07, 12:33 PM Tham gia ngày: Nơi Cư Ngụ: Bài gởi: Cảm ơn: Được cảm ơn 15,295 lần trong 1,524 bài viết 03 2007 TP Hồ Chí Minh 1,743 2,370 Offset truyền kỳ Kỳ 2: Offset và Validation List a. Có bao giờ bạn muốn tạo một Validation List mà nội dung của nó thay đổi theo sự thay đổi của một List khác (danh sách). Bài viết này sẽ hướng dẫn từng bước cách làm: Giả sử bạn có danh sách gồm 2 cột: OS (hệ điều hành) và Versions (Phiên bản) (Xem file đính kèm). Bây giờ bạn muốn tạo một Validation List để khi tại ô G3 ta chọn một OS nào đó thì danh sách trong ô H3 sẽ chỉ hiển thị các Versions của OS mà ta đang chọn (xem hình 6). #2 Hãy biết ước mơ! TranThanhPhong Diễn đàn Hàm Offset và Validation http://www.giaiphapexcel.com/forum/showthread.php?7188-Hàm-Offse 1 trong 6 12/06/2013 16:16 Qui trình thực hiện: B1. Tạo một danh sách A1:B34 (xem file đính kèm), với 2 cột OS và Versions. Lưu ý một OS có thể có nhiều Version. B2. Đặt tên cho vùng A2:A34 với tên là “OS”. Bạn quét chọn vùng A2:A34 | nhấn tổ hợp <Ctrl+F3> | Chọn New… gõ OS vào hộp Name, chọn Scope là Worksheet Offset2 hoặc Workbook đều được và tại Refers to gõ vào =A2:A34 | Nhấn nút OK (Excel 2007). Nếu dùng các phiên bản Excel trước thì sau khi nhấn <Ctrl+F3> là có thể khai báo việc đặt tên vùng và sao đó nhấn nút Add để hoàn thành. B3. Tạo một danh sách chứa tên các hệ điều hành được trích ra từ cột OS (danh sách này không trùng lặp). Bạn quét chọn các ô D2:D34 dùng để chứa danh sách kết quả trích lọc không trùng | nhập vào công thức mảng trích lọc sau: =IF(ISERR(INDEX(OS,SMALL(IF(MATCH(OS,OS,0)=ROW(IND IRECT("1:"&ROWS(OS))), MATCH(OS,OS,0),""),ROW(INDIRECT("1:"&ROWS(OS)))))) ,"", INDEX(OS,SMALL(IF(MATCH(OS,OS,0)=ROW(INDIRECT("1:" &ROWS(OS))), MATCH(OS,OS,0),""),ROW(INDIRECT("1:"&ROWS(OS)))))) Kết thúc công thức bằng tổ hợp phím <Ctrl+Shift+Enter>. Công thức trên sẽ trích ra các loại hệ điều hành (OS) và mỗi loại chỉ lấy một lần, các dòng trùng sẽ thay bằng “”. B4. Sau khi đã có danh sách các OS duy nhất, bạn hãy đặt tên cho danh sách này. Lưu ý, có khả năng có những loại OS khác do vậy ở đây khi đặt tên là dùng hàm Offset để tham chiếu đến vùng dữ liệu động. Bạn nhấn <Ctrl+F3> | Chọn New… | đặt tên cho vùng là OSValList tại Name | tại Refers to nhập vào công thức sau; =OFFSET(Offset2!$D$2,0,0,COUNTA(Offset2!$D$2:$D$34 )-COUNTIF(Offset2!$D$2:$D$34,""),1) Công thức trên giúp trả về vùng tham chiếu các OS duy nhất một cách động. Hàm Offset và Validation http://www.giaiphapexcel.com/forum/showthread.php?7188-Hàm-Offse 2 trong 6 12/06/2013 16:16 B5. Tạo bảng nhỏ như hình bên dưới. Chọn ô G3 và đặt tên là Val1Cell, chọn ô H3 đặt tên là Val2Cell (theo cách đặt tên nêu trên hoặc có thể đặt tên bằng cách gõ trực tiếp vào Name Box). B6. Đây là bước quan trọng giúp cho danh sách chọn tại H3 sẽ thay đổi phụ thuộc vào tùy chọn tại G3. Bạn đặt tên cho vùng Versions với tham chiếu trả về thay đổi theo tùy chọn của G3 như sau: Nhấn <Ctrl+F3> | chọn New… | tại hộp Name nhập vào tên là Versions | tại Refers to nhập vào công thức sau; =OFFSET(INDIRECT(ADDRESS(MATCH(Val1Cell,OS,0)+1,2, ,,)),0,0,COUNTIF(OS,Val1Cell),1) Công thức này giúp chọn ra vùng Versions tương ứng với việc chọn OS tại ô G3. B7. Áp Validation cho 2 ô G3 và H3: Chọn ô G3 | vào Data | Data Validation | Settings | chọn List | tại Source nhập vào =OSValList | nhấn nút Ok hoàn tất. Chọn ô H3 | vào Data | Data Validation | Settings | chọn List | tại Source nhập vào =Versions | nhấn nút Ok hoàn tất. Các bước đã hoàn tất, các bạn hãy chọn thử một OS nào đó tại G3 và qua ô H3 xem danh sách Version tương ứng. Các cải tiến cho công cụ này chúng ta có thể tiếp tục thảo luận trên GPE. TP. Tập tin đính kèm Offset.rar (12.1 KB, 8820 lần tải) thay đổi nội dung bởi: TranThanhPhong , 14-10-08 lúc 01:09 PM Danh mục bài viết tổng hợp của GPE | Mỗi ngày một "tuyệt chiêu" | Hướng dẫn sử dụng Crystal Ball | Giáo trình: Excel 2007 | Excel trong kinh tế Phần 1 | Phần 2 | PowerPoint 2010 Linh tinh: SubTotal | Hàm & Công thức mảng | Offset | Excel 97-2003 Options | Các loại tham chiếu | Vẽ biểu đồ | Custom Format | Khoá & mở khoá tập tin Excel | Định dạng theo điều kiện Câu đố: 1 | 2 | 3 | 4 | 5 Hàm Offset và Validation http://www.giaiphapexcel.com/forum/showthread.php?7188-Hàm-Offse 3 trong 6 12/06/2013 16:16 Cảm ơn Có 131 thành viên cảm ơn TranThanhPhong về bài viết này: 2337, @baoquang, anchung79, anhtitomo, anhtuan1066, bechanga, binhb15dlna, bivily, bogay, boyamater, cadafi, camchuongdo, canhsatlangtu113, Cao_Thanh_Ha, chandatn, Chu quyen, coffeeicon, dinhphuong9327, dohuuthuc, dudieuwa, duongmanhquan, duongthanhtu89, duyle86, dvu58, gau2603, Gbco, gia nguyên, Good-Luck, hangkhunglam, happy_lisa_happy, headbear, heocon405, hetxay, hoabillynguyen, hoangminhtien, hoangthuymi, hoangtuech90, hoangvuluan, Hoàng Trọng Nghĩa, hong gam, hongnhungpx, honka, hostcuibap, HUE2007, hung29kt, HuuThanh, iamcuong, jv251285, kittulip, l01012011, lacbuidoi, lam273, lebinh319, lenova, leonardo208, LeVanVi_UEL, LIENTHUYTHANH, linhngoc, linton, logica, luanvien177, luonchinguoc, luong duyen, mai1tyeu, mailinhphong, milanodesire, muabui88, muadem, mymichau, namcobain, ndhmoney686, ngdung, ngocmaidaiquoc24483, nguyenhongphong, nguyennhungptit, nhung2008, ninhhoanghiep, oliverlely, ongcusike, Pakinac, phonglan978, PhongPhan, pns56, Quang Tinh, quangtranevn, QuocPhong, saintpiox, sendme, skulblaka, soiconkthn, songvui, son_sajv, sumisumo, tedaynui, TeThienDaiThanh, thaibinh_excel, thaitam87, thangbx, thang_aof_cva, thanhcong2101989, thanhthu2004, Thay, thb.58, TKT, tonggiap, topgun, tqforever, trande314, trung78952, trungtuanthanh, truongthikt, tsf, tuoitrevietnam, tuvuduy, tuyetnhi, tuyphong1983, vanhesing, Vanpham2007, vanquangdy, vinhsonghinh, whitemouse, Xuan Phuong, xuan.nguyen82, xuannguyen12012, xuan_ha919, yenbinhta3, yeuthamhangxom, Yin.kn 11-10-07, 02:39 PM Tham gia ngày: Nơi Cư Ngụ: Bài gởi: Cảm ơn: Được cảm ơn 15,295 lần trong 1,524 bài viết 03 2007 TP Hồ Chí Minh 1,743 2,370 Offset truyền kỳ Offset truyền kỳ Kỳ 1: Giới thiệu hàm Offset Công dụng: Trả về tham chiếu đến một vùng nào đó, cách một ô hoặc một dãy ô một khoảng cách với số dòng hoặc số cột được chỉ định trước. Chúng ta có thể chỉ định số dòng, số cột của vùng tham chiếu trả về. Cú pháp: =OFFSET(reference, rows, cols, height, width) Trong đó: reference: là vùng tham chiếu làm cơ sở cho hàm (làm điểm xuất phát) để tạo vùng tham chiếu mới. reference phải chỉ đến một ô hoặc một dãy ô liên tục, nếu không hàm sẽ trả về lỗi #VALUE!. rows: là số dòng bên trên hoặc bên dưới reference, tính từ ô đầu tiên (ô ở góc trên bên trái) của reference. Ví dụ nếu rows là 3, sẽ có 3 dòng trả về và nằm bên dưới reference. Khi rows là số dương thì các dòng trả về nằm bên dưới reference, khi rows là số âm thì các dòng trả về nằm bên trên reference. cols: là số cột bên trái hoặc bên phải reference, tính từ ô đầu tiên (ô ở góc trên bên trái) của reference. Ví dụ nếu cols là 4 sẽ có 4 cột trả về và nằm bên phải của reference. Khi cols là số dương thì các cột trả về nằm bên phải reference, khi cols là số âm thì các cột trả về nằm bên trái reference. height: là số dòng của vùng tham chiếu cần trả về. Height phải là số dương. width: là số cột của vùng tham chiếu cần trả về. Width phải là số dương. Lưu ý: Nếu rows và cols làm cho tham chiếu trả về vượt ra ngoài phạm vi của một worksheet, hàm Offset sẽ báo lỗi #REF! Nếu bỏ qua height và width, thì height và width sẽ có kích thước mặc định là height và width của reference. Offset thật sự không di chuyển bất cứ ô nào, cũng không thay đổi bất kỳ phần chọn nào, nó chỉ trả về tham chiếu mà thôi. Chúng ta có thể sử dụng Offset với bất kỳ hàm nào cần đối số là một tham chiếu. Ví dụ, công thức Sum(Offset(C10,1,2,3,1)) sẽ tính tổng các giá trị của một dãy gồm ba dòng, một cột; đây là dãy nằm bên dưới ô C10 một dòng và bên phải ô này hai cột. Các ví dụ #1 Hãy biết ước mơ! TranThanhPhong Hàm Offset và Validation http://www.giaiphapexcel.com/forum/showthread.php?7188-Hàm-Offse 4 trong 6 12/06/2013 16:16 « Ðề Tài Trước | Ðề Tài Kế » TP. Kỳ 2: Offset và Validation List Tập tin đính kèm Offset.xls (36.0 KB, 11678 lần tải) Danh mục bài viết tổng hợp của GPE | Mỗi ngày một "tuyệt chiêu" | Hướng dẫn sử dụng Crystal Ball | Giáo trình: Excel 2007 | Excel trong kinh tế Phần 1 | Phần 2 | PowerPoint 2010 Linh tinh: SubTotal | Hàm & Công thức mảng | Offset | Excel 97-2003 Options | Các loại tham chiếu | Vẽ biểu đồ | Custom Format | Khoá & mở khoá tập tin Excel | Định dạng theo điều kiện Câu đố: 1 | 2 | 3 | 4 | 5 Cảm ơn Có 122 thành viên cảm ơn TranThanhPhong về bài viết này: 7thing, anchung79, angelofmine, binhan2007, bivily, bogay, byby_2323, camchuongdo, chenwentai, Chu quyen, coffeeicon, dash177, dinhphuong9327, dohuuthuc, dudieuwa, dungvovan, duongthanhtu89, duyle86, dvu58, eokakoe, excellearner, fangjing_phi, firstknight, Gbco, gia nguyên, hahonghanh, hai08, HaNoi_MuaLanhGia, heocon405, hetxay, hoabillynguyen, Hoangiumun, hoangthuymi, Hoàng Dũ, Hoàng Trọng Nghĩa, HuuThanh, huyen_htc, huyhoang1768, kha10607, khoa_pr, l01012011, lacbuidoi, lanr, lebinh319, lehoaithanh, lehungnp, leonardo208, lethuycaylua, LIENTHUYTHANH, linhngoc, linton, loan.dkl, lonelyheart1184, lsxinh, mai1tyeu, mailinhphong, mandem, mọt sách ham học, Mr Okebab, mrdam188, MrZy, muabui88, mymichau, mytho, namcobain, namphuongson, nddong109, ngoctranphuong, nguenphuc, nguyen duc man, nguyenbaobn88, nguyenhongphong, NguyenHongQuyen, nguyentam2T, nhung2008, ninhhoanghiep, nmhung49, nonzero, oliverlely, Pakinac, phamduydn, Phanhanhdai, phnam77, phuyen89, pns56, quangtranevn, QuocPhong, SAD LOVE, saintpiox, soiconkthn, songvui, spttkhai, sumisumo, Tống Văn Đệ, tedaynui, tessuarai, thang_aof_cva, thanhsang5979, theanhhn79, thongbao, ThuNghi, thuthuy0685, TKT, topgun, tqforever, trande314, trung78952, tuan73, tuyphong1983, uthoiemve, vanquangdy, vantan920, viendo, Vincentphan, xuan.nguyen82, xuanhien0786, xuannguyen12012, xuan_ha919, yeuthamhangxom Chuyển tiếp nhanh đến chuyên mục khác Những bài viết tổng hợp của Giải Pháp Excel Trở Lên Trên Hàm Offset và Validation http://www.giaiphapexcel.com/forum/showthread.php?7188-Hàm-Offse 5 trong 6 12/06/2013 16:16 Múi giờ GMT +7. Hiện tại là 04:00 PM. Phát triển bởi vBulletin™ Phiên bản 4.2.0 © Bản quyền và phát hành từ 2000 - 2013, bởi Jelsoft Enterprises Ltd. Giải Pháp Excel - www.giaiphapexcel.com - info@giaiphapexcel.com Đề nghị ghi rõ "Nguồn Giải Pháp Excel" khi phát hành lại thông tin từ trang web này. Hàm Offset và Validation http://www.giaiphapexcel.com/forum/showthread.php?7188-Hàm-Offse 6 trong 6 12/06/2013 16:16 . Những bài viết tổng hợp của Giải Pháp Excel Hàm Offset và Validation Ðề tài: Hàm Offset và Validation Phát hành sách "VBA trong Excel - Cải thiện và tăng tốc - năm 2013" Phát động CT. TranThanhPhong Hàm Offset và Validation http://www.giaiphapexcel.com/forum/showthread.php?7188 -Hàm- Offse 4 trong 6 12/06/2013 16:16 « Ðề Tài Trước | Ðề Tài Kế » TP. Kỳ 2: Offset và Validation List . G3. B7. Áp Validation cho 2 ô G3 và H3: Chọn ô G3 | vào Data | Data Validation | Settings | chọn List | tại Source nhập vào =OSValList | nhấn nút Ok hoàn tất. Chọn ô H3 | vào Data | Data Validation