Excel, порівняйте клітинки на різних аркушах у робочому зошиті


1

Я справжній нобій і у мене є деякі питання.

У мене є 5 аркушів (A, B, C, D, E). Кожен аркуш має цифри (10 рядків-15 рядків) від А1 до І15

Тепер я хочу зробити 6-й аркуш, на якому я можу порівняти значення комірок (вищі, такі ж, нижчі) для аркуша A і B або C і G або A і H.

(я можу це зробити зараз, змінивши вміст усіх комірок з = leafA! A1-sheetB! A1 на = sheetA! C1-sheetB! G1 etcetera і, ніж умовне форматування).

Але я хочу це зробити більш динамічно, заповнюючи лише дві комірки на аркуші 6, вміст цієї комірки повинен використовуватися іншими клітинками, як, наприклад, якби я хотів порівняти аркуш C en H, перша клітинка прочитала б = sheetC! A1-аркушH! A1 замість = sheetA! A1-аркушB! A1 і друга клітинка буде читати = sheetC! A2-sheetH! A2.

Я знаю, що я описав це не ідеально, але сподіваюся, що ви зрозумієте цю ідею і зможете мені допомогти! З повагою

Відповіді:


1

Якщо ви хочете зробити його дійсно гнучким, ви можете вибрати для INDIRECTцього такий спосіб:

=INDIRECT("'sheet"&A17&"'!A1")-INDIRECT("'sheet"&B17&"'!A1")

Де, якщо ви Aвведете в A17 6-го аркуша, і Bв B17 того ж аркуша, ваша формула буде порівнювати значення аркуша А1 зі значенням аркушаB А1.

Якщо змінити A17 на B, а B17 на A, він змінить значення навколо. Звичайно, ви можете поставити C, D або E у ці дві клітини.

Якщо ви хочете поставити назву всього аркуша, формула стає:

=INDIRECT("'"&A17&"'!A1")-INDIRECT("'"&B17&"'!A1")

І ви ставите sheetAі sheetBзамість цього в комірки A17 і B17.

Однак ця гнучкість досягається ціною, яка називається мінливістю; Це означає, що ці функції будуть перераховані навіть при найменших змінах в робочій книжці, і якщо у вас їх багато чи об'ємна книга, різницю важко ігнорувати.

Ви можете вибрати в таких випадках трохи меншу гнучкість, якщо у вас є конкретні формули, наприклад, якщо у вас є лише обмежена кількість оцінок, ви можете використовувати CHOOSEз певним номером ключа:

=CHOOSE(A17, sheetA!A1-sheetB!A1, sheetC!A1-sheetD!A1, ... )

І ви можете додати більше обчислень. У цьому випадку sheetA!A1-sheetB!A1буде оцінено, якщо є 1в A17.

sheetC!A1-sheetD!A1 буде оцінено, якщо A17 має 2. Наступний буде оцінено, якщо A17 має 3 і т.д.


Це виглядає перспективно! Я маю випробувати ваші рішення. Дякуємо за вашу швидку та повну відповідь!
Роберт

Я, Джеррі, це робить те, що я сподівався, що це може зробити. Але у мене є додаткове запитання. Я хотів скопіювати формулу у всі комірки на аркуші 6, але коли я це роблю, потягнувши клітинки вправо чи вниз, неправильні комірки змінюються. = INDIRECT ("'аркуш" & A17 & "'! A1") - INDIRECT ("'аркуш" & B17 & "'! A1") стає = INDIRECT ("'аркуш" & B17 & "'! A1") - INDIRECT ("'аркуш" & C17 & "'! A1"), будь-який спосіб змінити це, тому мені не потрібно змінювати посібник із 150 комірок?
Роберт

(тож у той спосіб, як я це спробував, клітини A17 і B17 змінюють замість A1 на B1 або A1 на A2 etcetera.
Роберт

@robert О, добре, ви можете використовувати , CELLякщо ви хочете Excel , щоб заповнити область належним чином: INDIRECT("'sheet"&A17&"'!"&CELL("address",A1))-INDIRECT("'sheet"&B17&"'!"CELL("address",A1)). Річ у тому, що CELL("address",A1)повертає A1 (або строго кажучи, $A$1але це тут не проблема), і оскільки він знаходиться у функції, посилання змінюється відповідно.
Джеррі

1
Спасибі. Я не можу підкріпити вас або ваші відповіді, тому що я, здається, не маю прав. Пітті, ти заслуговуєш мого голосу!
Роберт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.