Použití funkce Offset v aplikaci Excel

  • Sdílet Toto
Hugh West

Dnes bych vám rád představil Funkce OFFSET aplikace Excel na 3 příkladech ze života.

Nejprve popíšu syntaxi vzorce a poté se budu věnovat tomu, jak lze funkci OFFSET využít při řešení problémů v reálném životě.

Úvod

Funkce OFFSET může vrátit odkaz na buňku (říkejme jí cílová buňka) nebo rozsah (cílový rozsah), který je vzdálen od jiné buňky (referenční buňky) nebo rozsahu (referenční rozsah) o zadaný počet řádků a sloupců.

Na obrázku níže je znázorněno použití funkce OFFSET pro vrácení odkazu na buňku (levá část) nebo rozsah (pravá část).

Intuitivně tak poznáte, co je cílová buňka a co referenční buňka.

Zeleně zvýrazněná buňka je cílová buňka, zatímco žlutě zvýrazněné buňky tvoří cílový rozsah.

Modře zvýrazněné buňky jsou referenční buňky.

Obrázek 1

Co znamená OFFSET v aplikaci Excel (syntaxe)?

Zde je syntaxe funkce Offset: OFFSET (reference, rows, cols, [height], [width])

Odkaz Požadováno. Odkazem je buňka nebo rozsah buněk, od kterého začíná posun. Upozorňujeme, že pokud zadáváte rozsah buněk, musí spolu buňky sousedit.
Řádky Požadované . počet řádků, nahoru nebo dolů, referenční buňka nebo levá horní buňka referenčního rozsahu. Řádky může být kladná nebo záporná. Podívejte se na levou část obrázku 1, cílová buňka bude B2, pokud změním funkci jako OFFSET (C3, -1, -1). B2 je o jeden řádek výše než C3.
Cols Požadováno. Počet sloupců vlevo nebo vpravo od referenční buňky nebo levé horní buňky referenčního rozsahu. Stejně jako u příkazu Řádky argumentu, hodnoty Cols může být také kladný i záporný. Jak můžeme zapsat funkci OFFSET, pokud jako referenční buňku nastavíme B4 a jako cílovou buňku C3? Odpověď je OFFSET (B4, -1, 1). Zde je vidět, že Cols je kladný a C3 je o jeden sloupec vpravo od B4.
Výška Volitelně. Argument Height použijte pouze v případě, že cílem je rozsah. Říká, kolik řádků cílový rozsah obsahuje. Height musí být kladné číslo. Z pravé části obrázku 1 vidíte, že v cílovém rozsahu jsou dva řádky. Proto v tomto případě nastavíme Height jako 2.
Šířka Volitelně. Argument Šířka použijte pouze v případě, že cílem je rozsah (viz pravá část obrázku 1). Udává, kolik sloupců cílový rozsah obsahuje. Šířka musí být kladné číslo.

Nyní vám ukážu, jak funkci OFFSET použít k řešení problémů v reálném životě.

Případ 1: Vyhledávání zprava doleva kombinací funkcí OFFSET a MATCH

Je známo, že pomocí funkce VLOOKUP lze provádět pouze vyhledávání zleva doprava.

Hledaná hodnota musí být umístěna v prvním sloupci pole tabulky.

Pokud chcete přidat novou hodnotu vyhledávání, musíte celý rozsah tabulky posunout doprava o jeden sloupec nebo musíte změnit strukturu dat, pokud chcete jako hodnotu vyhledávání použít jiný sloupec.

Kombinací funkce OFFSET a funkce Match však lze omezení funkce VLOOKUP odstranit.

Co je to funkce MATCH a jak můžeme zkombinovat funkci OFFSET s funkcí Match, abychom provedli vyhledávání?

Funkce Shoda vyhledá zadanou položku v rozsahu buněk a poté vrátí relativní pozici této položky v rozsahu.

Vezměme si jako příklad rozsah B3:B8 z obrázku 2.1 (který ukazuje příjmy různých zemí v různých letech).

Vzorec "=MATCH ("USA", B3:B8, 0)" vrátí hodnotu 1 protože USA je první položkou v rozsahu (viz buňky B10 a C10).

Pro další rozsah C2:F2 se vrátí vzorec "=MATCH (2015, C2:F2, 0)". 3 protože rok 2015 je třetí položkou v rozsahu (viz buňky B11 a C11).

Vraťme se k funkci OFFSET.

Pokud nastavíme buňku B2 jako referenční buňku a buňku E3 jako cílovou buňku, jak můžeme zapsat vzorec OFFSET?

E3 je 1 řádek pod B2 a 3 sloupce vpravo až B2.

Proto lze vzorec zapsat jako "=OFFSET(B2, 1 , 3 )". Podívejte se pozorně na čísla v červené barvě, zjistíte, že se shodují?

To je odpověď na otázku - Jak kombinovat funkci OFFSET s funkcí Match - Funkci Match lze použít jako druhý nebo třetí argument funkce OFFSET. (viz buňka C13).

Buňka C14 ukazuje, jak k získání stejných údajů použít funkci VLOOKUP.

Před zápisem funkce VLOOKUP musíme vědět, že příjmy v roce 2015 jsou zaznamenány ve 4. sloupci tabulkového pole B2:F8.

To znamená, že při použití funkce VLOOKUP musíme dobře znát strukturu dat.

To je další omezení funkce VLOOKUP. Pokud však použijeme funkci MATCH jako argument funkce OFFSET, nemusíme znát index sloupce.

To je velmi užitečné, pokud je sloupců hodně.

Obrázek 2.1

Nyní přejděme ke složitějšímu příkladu.

Předpokládejme, že máme tabulku obsahující název společnosti, kontaktní jméno a e-mailovou adresu pro různé společnosti.

A chceme získat název společnosti ze známého jména kontaktu nebo získat jméno kontaktu ze známé e-mailové adresy. Co můžeme udělat?

Viz obrázek 2.2, rozsah B5:E8 obsahuje informace o společnosti. Vložením vstupů do buněk C2 a B3 mohu pomocí vzorce v červeném čtverci získat název společnosti, pokud znám jméno kontaktu.

Rozsah D2:E4 ukazuje, jak získat jméno kontaktu se známou e-mailovou adresou.

Souhrnně tyto dva příklady ilustrují, že můžeme provádět vyhledávání zprava doleva a že hledaná hodnota nemusí být umístěna v nejpravějším sloupci. Hledanou hodnotu může obsahovat kterýkoli sloupec v poli tabulky.

Obrázek 2.2

Případ 2: Automatizace výpočtu kombinací funkcí OFFSET a COUNT

Než se seznámíme s tím, jak automatizovat výpočet, kdykoli přidáme nové číslo do sloupce, začneme tím, jak nejprve automaticky vrátit poslední číslo ve sloupci.

Podívejte se na následující obrázek, který zobrazuje záznamy z oddělení lidských zdrojů. Předpokládejme, že chceme získat poslední číslo ve sloupci B, vzorec by byl "=OFFSET (C2, 9 , 0)", pokud použijeme funkci OFFSET.

Ze vzorce vyplývá, že 9 je číslo klíče.

Pokud můžeme toto číslo automaticky vrátit, můžeme být schopni automaticky vyhledat poslední číslo ve sloupci.

9 je právě počet buněk, které obsahují čísla ve sloupci C.

Pokud znáte funkci COUNT, víte, že funkce COUNT dokáže spočítat počet buněk, které obsahují čísla v daném rozsahu.

Například vzorec "=COUNT (C3:C11)" spočítá počet buněk, které obsahují čísla v buňkách C3 až C11.

V našem případě bychom rádi věděli, kolik čísel je v celém sloupci, proto by se měl použít odkaz jako C:C, který zahrnuje všechny řádky ve sloupci C.

Podívejte se prosím na buňky G4 a H4, číslo vrácené příkazem "=COUNT(C:C)" se přesně rovná hodnotě 9 .

Nahrazením 9 za COUNT(C:C) ve výše uvedené funkci OFFSET tedy získáme nový vzorec "=OFFSET (C2, COUNT(C:C) , 0)" (v buňce H5).

Vrátí číslo 87000, což je přesně poslední číslo ve sloupci C.

Nyní přejděme k automatickému výpočtu. Předpokládejme, že chceme získat součet všech čísel ve sloupci C.

Vzorec by byl "=SUMA (OFFSET (C2, 1, 0, 9 , 1))", pokud použijeme SUM společně s OFFSET.

9 je celkový počet řádků v rozsahu C3:C11 a také celkový počet buněk obsahujících čísla ve sloupci C.

Proto můžeme vzorec zapsat novým způsobem: "=SUMA (OFFSET (C2,1, 0, COUNT (C:C), 1))".

Podívejte se na buňky G10 a H10, celkový počet platů těchto 9 zaměstnanců je 521 700 USD.

Pokud nyní do buňky C12 vložíte číslo 34 000 USD, změní se čísla v buňce G5 i G10 na 34 000 USD, resp. 555 700 USD.

Tomu říkám automatizace, protože nemusíte aktualizovat vzorce v buňce G5 nebo G10.

Při použití funkce COUNT je třeba dávat pozor, protože funkce COUNT vrací pouze počet buněk, které obsahují čísla.

Například příkaz "=COUNT (B: B)" vrátí 0 místo 9, protože ve sloupci B není žádná buňka obsahující čísla (viz buňky G3 a H3).

Sloupec D obsahuje 10 buněk obsahujících čísla a číslo vrácené příkazem "COUNT (D: D)" je také 10.

Pokud však chceme získat poslední číslo ve sloupci D, stejně jako jsme to udělali pro sloupec C, dostaneme číslo 0 (viz buňky G8 a H8).

Je zřejmé, že 0 není to, co chceme. Co je špatně? Buňka D13 je od buňky D2 vzdálena 11 řádků místo 10 řádků.

To lze také dokázat pomocí vzorce "=OFFSET (D2, COUNT (D: D) + 1 , 0)" v buňce G7.

Pokud chceme použít funkci COUNT společně s funkcí OFFSET a umožnit tak automatizaci výpočtu, měla by čísla sousedit.

Obrázek 3

Případ 3: Použití funkce OFFSET k vytvoření dynamického rozsahu

Předpokládejme, že chceme vytvořit graf měsíčních jednotkových prodejů společnosti a na obrázku 4.1 jsou zobrazena aktuální data a graf vytvořený na základě aktuálních dat.

Každý měsíc se pod poslední číslo ve sloupci C přičte prodej jednotek za poslední měsíc.

Existuje snadný způsob automatické aktualizace grafu?

Klíčem k aktualizaci grafu je použití funkce OFFSET k vytvoření dynamických názvů rozsahů pro sloupec Prodané jednotky.

Dynamický rozsah prodejů jednotek bude automaticky zahrnovat všechny údaje o prodejích při zadávání nových údajů.

Obrázek 4.1

Chcete-li vytvořit dynamický rozsah, klikněte na Vzorce a pak vyberte Jméno manažera nebo Definovat název .

Níže Nový název dialogové okno se zobrazí, pokud kliknete na Definovat název .

Pokud se rozhodnete Jméno manažera , musíte také kliknout na Nový k vytvoření níže uvedených Nový název se zobrazí dialogové okno.

Obrázek 4.2

V " Jméno: " by měl být vyplněn název dynamického rozsahu. A v poli " Vztahuje se na:" vstupního pole musíme zadat vzorec OFFSET "=OFFSET (Figure4!$C$2, 1, 0, COUNT (!$C: $C), 1)", který vygeneruje dynamický rozsah hodnot na základě jednotek Prodané hodnoty zadané ve sloupci C.

Ve výchozím nastavení se název vztahuje na celý sešit a musí být v rámci sešitu jedinečný.

Chceme však omezit rozsah na konkrétní list.

Proto jsme zde zvolili obrázek4 v části " Rozsah: " vstupní pole. Po kliknutí na OK , je vytvořen dynamický rozsah.

Při zadávání nových údajů automaticky zahrne všechny údaje o prodeji.

Nyní klikněte pravým tlačítkem myši na libovolný bod grafu a vyberte možnost "Vybrat data".

Obrázek 4.3

V pobídce Vybrat data Zdroj, vyberte si Série1 a pak Upravit.

Obrázek 4.4

A poté zadejte "=Figure4!Units", jak ukazuje obrázek 4.5.

Obrázek 4.5

Nakonec to zkusíme a do buňky C13 napíšeme 11. Vidíte, že se graf změnil a byla do něj zařazena hodnota 11.

Graf se automaticky změní po přidání nových dat.

Obrázek 4.6

Více informací...

  • Funkce Offset(...) v aplikaci Excel s příklady

Stáhnout pracovní soubory

Stáhněte si pracovní soubory z níže uvedeného odkazu.

Excel-Offset-Function.rar

Hugh West je velmi zkušený školitel a analytik Excelu s více než 10 lety zkušeností v oboru. Má bakalářský titul v oboru Účetnictví a finance a magisterský titul v oboru Business Administration. Hugh má vášeň pro výuku a vyvinul jedinečný přístup k výuce, který lze snadno sledovat a pochopit. Jeho odborné znalosti Excelu pomohly tisícům studentů a profesionálů po celém světě zlepšit své dovednosti a vyniknout ve své kariéře. Prostřednictvím svého blogu Hugh sdílí své znalosti se světem a nabízí bezplatné výukové programy Excelu a online školení, které jednotlivcům a firmám pomohou dosáhnout jejich plného potenciálu.