Solved: inalis ng google sheets ang unang character

Ang Google Sheets ay isang versatile na tool, na nag-aalok ng napakaraming feature at formula para tumulong sa pag-compile, pagkalkula, at pagsusuri ng data. Ang isang ganoong tampok ay ang kakayahang manipulahin ang teksto sa pamamagitan ng iba't ibang mga formula. Ang isang karaniwang kahilingan ay alisin ang unang character mula sa isang cell. Ito ay maaaring mukhang nakakalito kung hindi ka pamilyar sa Google Sheets o sa tagapag-alaga na wika nito - Google Apps Script, na gumagamit ng variation ng Javascript, katulad ng Typescript. Ngunit huwag mag-alala, sa post, ituturo namin sa iyo kung paano ito gagawin, na nagpapaliwanag ng mga hakbang nang malinaw at maigsi.

function removeFirstCharacter(sheetName: string) {
   let sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
   let range = sheet.getDataRange();
   let values = range.getValues();

   values = values.map(row => row.map(cell => typeof cell === 'string' ? cell.substring(1) : cell));

   range.setValues(values);
}

Ang function sa itaas, ang `removeFirstCharacter`, ay tumatagal ng isang argumento โ€“ sheetName. Ito ang pangalan ng sheet sa dokumento ng Google Sheets kung saan mo gustong alisin ang unang character.

Pag-unawa sa Code

Una, nakakakuha kami ng reference sa sheet sa pamamagitan ng pagtawag sa `SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName)`. Pagkatapos, makakakuha tayo ng Range object na kumakatawan sa lahat ng mga cell sa sheet sa pamamagitan ng pagtawag sa `getDataRange()` method.

Ang pamamaraang `getValues()` ay nagbabalik ng dalawang-dimensional na array, na ang bawat sub-array ay kumakatawan sa isang row sa sheet.

Pagkatapos ay ginagamit namin ang function na `map` nang dalawang beses, isang beses para sa panlabas na hanay (mga hilera) at isang beses para sa bawat panloob na hanay (mga cell sa isang hilera). Para sa bawat cell na isang string, tinatawag namin ang pamamaraang `substring()`, na may 1 bilang index na magsisimula, na epektibong nag-aalis ng unang character.

Panghuli, ginagamit namin ang `range.setValues(values)` upang isulat ang na-update na data pabalik sa sheet.

Google Apps Script at ang kaugnayan nito sa Typescript

Google Apps Script, ang wika kung saan nakasulat ang mga formula ng Google Sheets, at Typescript, parehong nag-ugat sa Javascript. Sa katunayan, ang Typescript ay isang superset ng Javascript, na nagpapalawak ng wika na may mga static na uri, na kapaki-pakinabang sa malalaking base ng code, kung saan kailangan ang mas mataas na kaligtasan at tooling.

Ang Google Apps Script ay batay sa Javascript 1.6, na may ilang bahagi ng 1.7 at 1.8 at nagbibigay ng mas simpleng paraan upang i-automate ang mga gawain sa mga produkto ng Google.

Pagmamanipula ng Dimensyon at Array sa Typescript

Sa code na nakasulat sa itaas, gumamit kami ng mga multidimensional na array (isang array ng mga array), na isang karaniwang istraktura ng data na ginagamit sa maraming programming language, kabilang ang Typescript.

Ang dahilan kung bakit natatangi ang pananaw ng Typescript sa klasikong istruktura ng data na ito ay ang kakayahan nitong suriin ang uri. Sa Typescript, masisiguro mong ang iyong mga array, kahit na multidimensional, ay naglalaman ng data ng isang partikular na uri.

Gamit ang kaligtasan ng uri ng Typescript at ang pagiging simple ng Google Apps Script, maaari kang mag-arkitekto ng tumpak, malakihang mga application, na nagpapatibay ng kahusayan at kadalubhasaan sa iyong toolkit ng programming. Ito ang synergy sa pagitan ng pagiging simple at sukat na nagpapatibay sa karamihan ng Google Sheets at ang Text Manipulation Formulas nito.

Array.method.map()

Sa larangan ng programming, ang Array.prototype.map() ay hindi isang alien function. Karaniwan ito sa mga programmer dahil sa utility nito sa paglikha ng bagong array na may mga resulta ng pagtawag sa isang ibinigay na function sa bawat elemento sa array. Gayundin, sa aming code, na-deploy namin ang array.map() function para sa pagmamanipula ng array โ€“ paggawa ng bagong array sa pamamagitan ng pag-alis ng unang character mula sa bawat elemento ng string.

Kaugnay na mga post:

Mag-iwan ng komento