The Codest
  • O nás
  • Služby
    • Vývoj softwaru
      • Vývoj frontendů
      • Vývoj backendu
    • Staff Augmentation
      • Vývojáři frontendů
      • Vývojáři backendu
      • Datoví inženýři
      • Cloudoví inženýři
      • Inženýři QA
      • Další
    • To Advisory
      • Audit a poradenství
  • Odvětví
    • Fintech a bankovnictví
    • E-commerce
    • Adtech
    • Healthtech
    • Výroba
    • Logistika
    • Automobilový průmysl
    • IOT
  • Hodnota za
    • CEO
    • CTO
    • Manažer dodávek
  • Náš tým
  • Case Studies
  • Vědět jak
    • Blog
    • Setkání
    • Webové semináře
    • Zdroje
Kariéra Spojte se s námi
  • O nás
  • Služby
    • Vývoj softwaru
      • Vývoj frontendů
      • Vývoj backendu
    • Staff Augmentation
      • Vývojáři frontendů
      • Vývojáři backendu
      • Datoví inženýři
      • Cloudoví inženýři
      • Inženýři QA
      • Další
    • To Advisory
      • Audit a poradenství
  • Hodnota za
    • CEO
    • CTO
    • Manažer dodávek
  • Náš tým
  • Case Studies
  • Vědět jak
    • Blog
    • Setkání
    • Webové semináře
    • Zdroje
Kariéra Spojte se s námi
Šipka zpět ZPĚT
2020-03-23
Vývoj softwaru

Jak mohou aplikace Google Apps ušetřit váš čas?

Wojciech Bak

Cloudová řešení dnes vytlačují desktopové aplikace určené pro kancelářskou práci. Jeden z největších kancelářských balíků poskytuje společnost Google a obsahuje Dokumenty, Tabulky a Prezentace, tedy většinu toho, co průměrná kancelář potřebuje.

V tomto článku se chci blíže podívat na aplikaci Tabulky Google a ukázat vám, jak ji udělat ještě chytřejší pomocí Google Apps Script.

Představte si, že vaše práce spočívá v dohledu nad prací někoho jiného, což obvykle vede k psaní nějakých zpráv. Chcete, aby vše bylo standardizované a obecné, a tak jste si vytvořili tabulku se seznamem věcí, které je třeba kontrolovat, a několika buňkami pro komentář. Předpokládejme, že jste zodpovědní za kvalitu digitálního produkt. Pak může váš tabulkový procesor vypadat takto:

vývoj softwaru

Na výše uvedeném příkladu je vidět několik věcí:

  • název funkce ("Přihlašovací formulář uživatele") a číslo (např. ze systému ERP),
  • seznam aspektů, které je třeba zkontrolovat a poskytnout k nim zpětnou vazbu (sloupec "Oblast"),
  • několik prázdných polí pro vaše závěry (sloupec "Komentář").

Tento list se jmenuje "Generátor zpráv", protože vám ukážu, jak se tento dokument může vyvinout ve skutečně užitečný nástroj, který vám umožní posoudit kvalitu výsledků něčí práce.

Pokud chcete některé výsledky kvantifikovat, bylo by pravděpodobně nejlepší použít stupnici, např. 1-10 bodů, nebo něco podobného.

Vytvořme nový list ve stejném dokumentu, pojmenujme jej "Config" a definujme jej jako chráněný (nebo k jeho názvu alespoň připojme emotikon zámku kláves). Tento list slouží pouze k uchování některých předdefinovaných možností, jako jsou ty níže uvedené:

Vývoj softwaru Codest

Nyní můžete tyto hodnoty vložit do některých rozevíracích seznamů v okně Generátor zpráv list pomocí Ověřování dat funkce. Zde najdete několik pokynů, jak toho dosáhnout:

softwarový dům

Poté můžete snadno převést hodnocení na číselné hodnoty pomocí příkazu IF vzorec. Vaše tabulka zůstane lidsky přívětivá a vaše závěry budou zároveň kvantifikované (tedy měřitelné a srovnatelné).

Tento dokument je úhledný, nicméně představte si, co se stane, když se rozsah vašeho audit roste a vy máte stovky věcí, které je třeba zkontrolovat. Můžete si uložit prázdnou šablonu formuláře a zkopírovat ji pokaždé, když potřebujete vytvořit novou zprávu, ale přepínání mezi seznamy dokumentů a tabulkou je velmi otravné. To je okamžik, kdy začnete uvažovat o nějaké automatizaci.

Fronented Report pro rok 2020

Je ideální čas začít dobrodružství s Google Apps Script!

Než začneme kódovat, připravíme si několik tlačítek pro hromadné akce. Podle výše uvedeného příkladu:

  • označit všechny položky jako "Perfektní".
  • označit všechny jako "Potřebná vylepšení".
  • označit všechny jako "Nepřijatelné".
  • resetovat vše (nastavit hodnotu na prázdný řetězec).

Také budeme potřebovat jednu akci navíc, abychom po dokončení auditu uložili nový soubor.

Nejprve rozšíříme naše Generátor zpráv s funkční oblastí obsahující tlačítka.

software house Polsko

Pak pomocí Vložit -> Kreslení, přidejme postupně naše tlačítka.

Softwarový dům Codest

Náš vzorový dokument by měl vypadat takto:

software house Polsko

Jsme připraveni přidat do tohoto krásného uživatelského rozhraní trochu logiky! Je velmi snadné začít - stačí vybrat Nástroje -> Editor skriptů v horním menu a prohlížeč přejde na novou kartu.

agentura pro vývoj softwaru

Rozhraní editoru je velmi intuitivní. Pokud jste obeznámeni s jakýmkoli kód editoru byste měli svůj soubor snadno přejmenovat nebo vytvořit nový (Soubor -> Nový -> Soubor skriptu).

Skript Google Apps není nic jiného než bratranec JavaScript, abych tak řekl. Pokud znáte JS, můžete dosáhnout způsobilosti GS také!

Prvním krokem je shromáždit všechny potřebné odkazy na jednom místě a dát jim výstižné názvy. Začneme s globálními proměnnými tím, že odstraníme výchozí myFunction a zadání něčeho užitečnějšího do Code.gs soubor.

var spreadsheet = SpreadsheetApp.getActiveSpreadsheet()

// odkazy na listy

var report = spreadsheet.getSheets()[0]
var config = spreadsheet.getSheets()[1]

Výše uvedený kód je poměrně srozumitelný, ale aby to bylo naprosto jasné:

  • SpreadsheetApp je k dispozici v globálním kontextu,
  • getActiveSpreadsheet metoda umožňuje nás získat odkaz na tabulku, na které pracujeme,
  • getSheets metoda volaná na Tabulkový procesor vrací pole listů z této tabulky; v našem příkladu vrací [Generátor zpráv list, Konfigurace pole listů].

Nyní můžeme jít dále a získat užitečná data z naší tabulky.

// editovatelná oblast (buňky s rozevíracími seznamy)

var dropdowns = report.getRange('C4:C13')

// buňka s nadpisem (název funkce)

var featureName = report.getRange('B2').getValue()

// možnosti z listu "Config
// všimněte si, že metodě getRange() můžete předat jedinou buňku.
// a změna možností nemá vliv na funkčnost skriptu

var values = {
unacceptable: config.getRange('A2').getValue(),
improvements_needed: config.getRange('A3').getValue(),
perfect: config.getRange('A4').getValue(),
empty: ''
};

Jediné, co zbývá nakódovat, je definice funkcí, které chceme tlačítkům přiřadit.

// funkce tlačítek

funkce allPerfect() {
dropdowns.setValue(values.perfect)
}

funkce allNeedImprovements() {
dropdowns.setValue(values.improvements_need)
}

funkce allUnacceptable() {
dropdowns.setValue(values.unacceptable)
}

function clear() {
dropdowns.setValue(values.empty)
}

funkce copy() {
var copy = spreadsheet.copy(featureName + ' - report')

// Nyní jsme zkopírovali dva listy se stejnými hodnotami
// ale se změněnými názvy (s příponou "copy"),
// v tomto případě jim musíme dát původní názvy

// přejmenovat list sestavy
copy.getSheets()[0].setName(report.getName())

// přejmenovat konfigurační list
copy.getSheets()[1].setName(config.getName())
}

Na stránkách kopírovat() metoda automaticky vytvoří novou tabulku s názvem (v našem příkladu) "Přihlašovací formulář uživatele - hlášení", hned vedle aktuálního.

Přiřaďte naše metody dříve vytvořeným tlačítkům. Zvolte Přiřazení skriptu po kliknutí pravým tlačítkem myši na tlačítko...

agentura pro vývoj softwaru Polsko

...a zadejte název metody, zde je to allPerfect

Vývoj softwaru JavaScript

Generátor nemusíte zavírat. Pomocí hromadných akcí připravte formulář pro novou sestavu, změňte název funkce a poté uložte další kopii!

Možnosti Skript Google Apps jsou tak rozsáhlé, že jejich popis by vydal na celou sérii článků. Pokud vás zajímá optimalizace vaší kancelářské práce, neváhejte se podívat na stránky oficiální dokumenty a udělejte své povlečení ještě chytřejší!

Existuje několik opravdu užitečných hacků, jako např. tento z xfanatical.com o exportu tabulkového procesoru Google do PDF.

Příklad popsaný v tomto článku je zde. Doufám, že se vám bude líbit. Bavte se!

Související články

Podniková a škálovací řešení

Pracujte chytřeji, ne tvrději: Jak mohou další vývojáři urychlit Project Development

V dnešním rychlém a neustále se vyvíjejícím podnikatelském prostředí je pro úspěch nezbytné pracovat chytřeji, nikoli tvrději. To platí zejména v odvětví informačních technologií, kde je poptávka po inovativních a...

The Codest
Greg Polec CEO
Podniková a škálovací řešení

Maximalizujte svou produktovou vizi - semináře

Uskutečněte svou vizi produktu a maximalizujte jeho potenciál díky našim specializovaným seminářům! Osvojte si dovednosti, které potřebujete k uskutečnění své vize.

thecodest
Vývoj softwaru

Výhody Agile Methodology

Objevte obrovské výhody přijetí agilní metodiky, která maximalizuje produktivitu a efektivitu vašeho týmu. Začněte získávat výhody ještě dnes!

thecodest

Přihlaste se k odběru naší znalostní databáze a získejte aktuální informace o odborných znalostech z oblasti IT.

    O nás

    The Codest - Mezinárodní společnost zabývající se vývojem softwaru s technologickými centry v Polsku.

    Spojené království - ústředí

    • Kancelář 303B, 182-184 High Street North E6 2JA
      Londýn, Anglie

    Polsko - Místní technologická centra

    • Kancelářský park Fabryczna, Aleja
      Pokoju 18, 31-564 Krakov
    • Brain Embassy, Konstruktorska
      11, 02-673 Varšava, Polsko

      The Codest

    • Home
    • O nás
    • Služby
    • Case Studies
    • Vědět jak
    • Kariéra
    • Slovník

      Služby

    • To Advisory
    • Vývoj softwaru
    • Vývoj backendu
    • Vývoj frontendů
    • Staff Augmentation
    • Vývojáři backendu
    • Cloudoví inženýři
    • Datoví inženýři
    • Další
    • Inženýři QA

      Zdroje

    • Fakta a mýty o spolupráci s externím partnerem pro vývoj softwaru
    • Z USA do Evropy: Proč se americké startupy rozhodly přesídlit do Evropy?
    • Srovnání technických vývojových center v zahraničí: Tech Offshore Evropa (Polsko), ASEAN (Filipíny), Eurasie (Turecko)
    • Jaké jsou hlavní výzvy CTO a CIO?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Website terms of use

    Copyright © 2026 by The Codest. Všechna práva vyhrazena.

    cs_CZCzech
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese es_ESSpanish nl_NLDutch etEstonian elGreek pt_PTPortuguese cs_CZCzech