Джеймс Чен посилає цей гостьовий пост. Джеймс є членом групи Excel Gurus у LinkedIn.
Найчастіше нам потрібно витягувати інформацію з різних аркушів у книзі. Якщо ви докладаєте обережності, щоб послідовно називати робочі аркуші, ви можете поєднати VLOOKUP з INDIRECT, щоб витягувати дані з різних аркушів. Ця техніка дозволяє заощадити життя та час.
Скажімо, у вас є таблиця продажів з різними клієнтами, і ви отримуєте новий аркуш щомісяця. Будьте послідовними у виборі правила іменування робочих аркушів. Наприклад, ви можете використовувати Sales_Jan_2012, Sales_Feb_2012, Sales_Mar_2012. Це те, що я люблю називати рівномірним іменуванням.
На зведеному аркуші ви хочете шукати продажі для клієнта XYZ з кожного щомісячного аркуша. Скажіть, що у вас є справжні дати Excel на січень 2012 року, лютий 2012 року, березень 2012 року в B3: D3. Ви маєте ім’я клієнта у форматі A4. Структура кожного щомісячного аркуша продажів - це клієнт в А, а продажі в Б. Спробуйте наступну формулу:
=VLOOKUP($A4,INDIRECT(“Sales_”&TEXT(B$3,”MMM_YYYY”)&”!$A:$B),2,False)
Як це працює: функція TEXT форматує дату у форматі Jan_2012. Амперсанд є оператором конкатенації, тому ви в кінцевому підсумку передаєте Sales_Jan_2012! $ A: $ B до функції INDIRECT. Функція буде динамічно переглядати інший аркуш на основі дати в рядку 3.
Це особливо корисно, коли у вас є кратні на кратні єдині вихідні аркуші даних, з яких вам потрібно отримати.