Jeg har sett under insert> …? men kunne ikke finne noe.
Kan dette gjøres via en innebygd funksjon eller et tilpasset skript?
Kommentarer
Svar
Det er mulig å sette inn dagens dato gjennom en makro.
Åpne Google-dokumentet ditt og velg Skripteditor iv id = «under Verktøy 75f46555c1 «>
. Dette åpner Googles skriptredigerer der det er mulig å lage makroer for Google Dokumenter.
Lim inn dette skriptet og lagre det som Datomakro eller noe:
/** * The onOpen function runs automatically when the Google Docs document is * opened. Use it to add custom menus to Google Docs that allow the user to run * custom scripts. For more information, please consult the following two * resources. * * Extending Google Docs developer guide: * https://developers.google.com/apps-script/guides/docs * * Document service reference documentation: * https://developers.google.com/apps-script/reference/document/ */ function onOpen() { // Add a menu with some items, some separators, and a sub-menu. DocumentApp.getUi().createMenu("Utilities") .addItem("Insert Date", "insertAtCursor") .addToUi(); } /** * Inserts the date at the current cursor location in boldface. */ function insertAtCursor() { var cursor = DocumentApp.getActiveDocument().getCursor(); if (cursor) { // Attempt to insert text at the cursor position. If insertion returns null, // then the cursor"s containing element doesn"t allow text insertions. var date = (new Date).toLocaleDateString("default", { day: "numeric", month: "long", year: "numeric"}); // use your local (browser) date format with month name var element = cursor.insertText(date); if (element) { element.setBold(true); } else { DocumentApp.getUi().alert("Cannot insert text at this cursor location."); } } else { DocumentApp.getUi().alert("Cannot find a cursor in the document."); } }
Oppdater eller åpn nå dokumentet ditt, og et nytt menyelement vises: Verktøy . Under denne menyen vises et element som heter Sett inn dato . Klikk på den for å sette inn dagens dato på markørposisjonen.
For å endre formatet på datoen må du endre “formatet ”Brukt i skriptet. Formatet kan inneholde følgende tegn: yyyy-MM-dd"T"HH:mm:ss"Z"
For å klargjøre, setter dette skriptet bare inn dagens dato på markøren for dag du utfører verktøyet. Det er ikke akkurat det samme som = i dag () -funksjonen i Google Sheets, som oppdaterer datoen til gjeldende dato når du åpner regnearket. Dette skriptet sparer deg imidlertid bryet med å slå opp datoen og skrive den på dagen du utfører skriptet.
Kommentarer
- Setter dette inn gjeldende dato i lokal tidssone eller gjeldende dato i GMT?
- Standardverdien er " GMT ". Hvis du ser på linjen som inneholder:
Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd");
det ' er mulig å endre GMT til en tidssone du ønsker. - Jeg ' har gjort en lignende funksjon for SpreadsheetApp (for å sette inn dato i aktiv celle). Du finner den her: gist.github.com/Eccenux/712ae3d7913e971e46035546b2ccc85b
- Nå .. er det en eller annen måte å automatisk tvinge et skript til å settes inn i alle dokumenter som er opprettet i en organisasjon?
- Er dette er det noen måte å gjøre dette skriptet " globalt " slik at for hvert Google-dokument jeg oppretter eller åpner, er skriptet der og tilgjengelig?
=TODAY()
fungerer ikke for logging, siden den oppdateres til gjeldende dato hver gang siden åpnes. De fleste ganger vil jeg spille inn dagens dato og ikke oppdatere. Hvis du trenger å sette inn dagens dato for en loggfil, trenger du noe annet.