Excel - повернення значення лише з поточного та 3 попередніх рядків


-1

У мене електронна таблиця з 3 стовпцями. Колонка 1 - це перелік типів юрисдикції (штат, місто, повіт та район), а стовпець 2 - назва відповідної юрисдикції.

Мені потрібно об'єднати деякі імена у стовпці 2 у рядок, який відображається у колонці 3, залежно від відповідного їм "типу юрисдикції" у колонці 1 як такої:

  1. Назви штатів та міст не змінюватимуться, а в основному просто з’являться у колонці 3
  2. Я додаю місто до назв графств
  3. Я додаю назви округів до назв округів.
  4. У випадках, коли "Не застосовується" - це значення: якщо це штат чи місто, воно буде показано у колонці 3, але я виключаю "Не застосовується" з будь-яких рядків (тому він не буде доданий до жодних назв округу чи округу ).

Моя формула:

=IF(A13="State", B13, IF(A13="City",IF(A13="NOT APPLICABLE", "NOT APPLICABLE", B13),IF(A13="County",IF(A13="NOT APPLICABLE", "NOT APPLICABLE", IF(VLOOKUP("City", A10:B13,2, FALSE)="NOT APPLICABLE", B13, VLOOKUP("City", A10:B13,2, FALSE) & " " & B13)),IF(A13="District",IF(B13="NOT APPLICABLE", "NOT APPLICABLE", IF(VLOOKUP("County", A10:B13,2,FALSE)="NOT APPLICABLE", B13, VLOOKUP("County", A10:B13,2, FALSE) & " " & B13))))))

Мені вдалося виконати вищесказане, і все, здається, працює нормально. Однак я переживаю за те, як я використовував дані VLOOKUPдля пошуку даних. Це дуже довгий список, і коли я перетягую формулу вниз, VLOOKUPдіапазон змінюється. Так, наприклад, у 4-му ряду діапазон дорівнює A2: B5, але тоді, коли я перетягую його, він стає A3: B6, A4: B7 і т. Д. Мені цікаво, чи є спосіб змінити діапазон у функції VLOOKUP або якщо я повинен взагалі використовувати іншу функцію для того, щоб доручити формулі завжди виглядати лише у поточному рядку плюс 3 рядки до цього.

Ось зразок моєї електронної таблиці:

Таблиця юрисдикції

Я спробував зробити стовпчики, але не зміг зрозуміти, як це зробити в Stack Exchange, тому я створив скріншот. Я сподіваюся, що це нормально.


Для завдань настільки складних, як ця, ви можете розглянути Visual Basic, мову програмування, яка часто використовується в Excel. Він має здатність повторювати кожен рядок, що зменшить ризик використання VLOOKUP. Я знаю, що це не приносить великої користі, коли ви вже вклали стільки часу у формулу, але, можливо, варто подумати про наступний раз.
Sam3000

Дякую! У мене дуже мало досвіду роботи з Visual Basic, тому я сподівався, що зможу досягти цього звичайною формулою. Однак дуже оцінюю пропозицію і, безумовно, потрудимось швидше навчитися VB ... Я натрапив на багато випадків, коли це було б безцінним. Ура. :-)
Zipotontic

Чи існує можливість, що і місто, і округ не застосовуються? Чи слід також враховувати цю умову?
патким

Відповіді:


1

Спробуйте цю формулу в стовпці 3 і подивіться, чи працює вона для вас. Моє припущення полягає в тому, що округ штату і округу повторюються кожні 4 ряди послідовно.

=IF(A2="State",B2,IF(A2="City",B2,IF(OR(A2="County",A2="District"),IF(AND(B2="NOT APPLICABLE",B1="NOT APPLICABLE"),"",IF(B1="NOT APPLICABLE",B2,IF(B2="NOT APPLICABLE",B1,IF(AND(B1<>"NOT APPLICABLE",B2<>"NOT APPLICABLE"),B1&" "&B2,"")))))))

Я замінив VLOOKUP абсолютними посиланнями на комірки. Для початку потрібен принаймні один запасний рядок, який у будь-якому випадку є вашим заголовком.

введіть тут опис зображення


pat2015 - Це абсолютно чудово, дякую! Працює чудово! Величезне спасибі вам за те, що ви не тільки вирішили мою головоломку, але й за те, що ви очистили мій безлад. Дуже подобається, як ви використовуєте IF / AND, а не всі мої VLOOKUP. Дуже дякую за допомогу !!!!
Zipotontic
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.