Czy istnieje sposób utworzenia znacznika czasu w arkuszu kalkulacyjnym Google?

31

Używam PSPad jako edytora tekstu, który pozwala nacisnąć Alt+, Daby wstawić znacznik czasu, np .:

2010-07-17 23:45:44

Czy można to zrobić w arkuszu kalkulacyjnym Google?

Edward Tanguay
źródło
4
Byłoby to pomocne w korzystaniu z dokumentu Google jako dziennika inżynieryjnego. +1.
Thomas Owens,
1
tak, używam dokumentów Google jako zewnętrznych źródeł danych dla stron internetowych i z tego powodu chciałbym mieć znacznik czasu
Edward Tanguay,
1
@EdwardTanguay, jeśli przypadkiem przejedziesz .. powinieneś zmienić poprawną odpowiedź na najczęściej głosowaną :)
Lipis
1
Czytelnikom zaleca się stosowanie najlepszej odpowiedzi , nawet jeśli nie jest ona obecnie na górze.

Odpowiedzi:

8

Używam AutoHotKey do wykonania tej funkcji.

AutoHotKey to aplikacja skryptowa i język Windows.

Kod, którego używam, znajduje się poniżej, można łatwo zmodyfikować, wstawiając czas i zmieniając ukośniki na łączniki, jeśli tak wolisz.

+!d:: ;Shift-Alt-D: Insert current date
SendInput %A_DD%/%A_MM%/%A_YYYY%
return
ogłoszone
źródło
tak, autohotkey jest moim przyjacielem, dziwne, zapomniałem o tym, użyłem% A_YYYY% -% A_MM% -% A_DD%% A_Hour%:% A_Min%:% A_Sec% i działa idealnie, dzięki!
Edward Tanguay,
Nie martw się, cieszę się, że ci przypomniałem :)
ogłoszono
39

Arkusze Google obsługują następujące skróty klawiaturowe:

  • Ctrl+ Shift+ :to naciśnięcie klawisza, aby wstawić czas.

  • Ctrl+ ;to naciśnięcie klawisza, aby wstawić datę.

  • Ctrl+ Alt+ Shift+ :to naciśnięcie klawisza, aby wstawić datę i godzinę.

Aby uzyskać więcej informacji, zobacz Akceleratory klawiatury, mnemoniki i skróty .

Danniogirl
źródło
4
Jest to podobne do programu Microsoft Excel, jednak w przeciwieństwie do programu Excel nie można stosować jednego skrótu do drugiego w celu uzyskania pełnego znacznika czasu. Skrót w Dokumentach Google wydaje się działać tylko wtedy, gdy zaznaczona jest cała komórka, a nie podczas edytowania, dzięki czemu można uzyskać datę LUB godzinę za pomocą tej metody, a nie jedno i drugie.
MrWhite
3
Miły! Uwaga: działa to tylko w przypadku arkuszy kalkulacyjnych, a nie dokumentów.
jimmyorr
1
@ Rubén Teraz jest jeden dla obu! (h / t kolen i Cameron Crest )
Nie działa na Linuksie Firefox :-( Czy istnieje sposób, aby uzyskać tę funkcję poprzez menu ?? !!
Philippe Gachoud
13

Stworzyłem mały skrypt, który konwertuje dosłowny ciąg „_now” na bieżącą datę i godzinę -


function onEdit(e) {
  if (e.range.getValue() == "_now") {
    e.range.setValue(new Date());
  }
}

Uważam, że pisanie _nowi konwertowanie na bieżącą wartość daty / godziny jest bardzo przydatne .

Zobacz https://developers.google.com/apps-script/quickstart/macros i https://developers.google.com/apps-script/understanding_events, aby uzyskać więcej informacji na temat dodawania tego do arkusza kalkulacyjnego Google

0cd
źródło
1
Power to Google Apps Script
Jacob Jan Tuinstra
4
To powinno być odpowiedzią, jeśli rozważasz na wszystkich platformach nie tylko dla systemu Windows.
Robert
@Robert, czy webapps.stackexchange.com/a/24692/10579 nie jest lepszą odpowiedzią?
Pacerier
@Pacerier Nie wydaje mi się, aby te skróty dodawały tylko datę lub godzinę. Nie data / godzina, o którą poprosił PO. Przeczytaj komentarze zamieszczone pod podanym linkiem.
Jacob Jan Tuinstra
W tym miejscu omówiono formatowanie znaczników czasu utworzonych za pomocą tego skryptu .
7

Możesz umieścić bookmarklet z tą lokalizacją:

javascript:var thetime=new Date();var txtNode=document.createTextNode((thetime.getMonth()+1)+'/'+thetime.getDate()+'/'+thetime.getFullYear()+' '+thetime.getHours()+':'+thetime.getMinutes()+':'+thetime.getSeconds()); var myInputNode=document.getElementsByClassName('cell-input')[1]; if (myInputNode.hasChildNodes()) {  myInputNode.replaceChild(txtNode, myInputNode.childNodes[0]); } else { myInputNode.appendChild(txtNode); }; void(0);

następnie edytuj komórkę i kliknij bookmarklet.

Ben Johnson
źródło
Jak umieścić bookmarklet?
Ruby
Ruby - możesz przeciągnąć utworzony tutaj przycisk na pasek zakładek.
SelfPublish.org,
2
  1. W pobliskiej komórce lub w zablokowanym okienku wprowadź dane =today()do komórki, aby uzyskać bieżącą datę.
  2. Skopiuj komórkę, a następnie użyj (Wklej specjalnie → Wklej tylko wartości) z menu edycji, aby uzyskać statyczną datę i godzinę w momencie wklejenia wartości w komórce, dla której chcesz datownik.
Tristan Parlette
źródło
Odpowiednio, użyj Ctrl-C, a następnie Ctrl-Shift-V (bez wchodzenia do menu). Można zastosować to samo podejście, =now()aby uzyskać datę i godzinę w tej samej komórce: jest to prawdopodobnie najłatwiejszy sposób na zrobienie tego bez skryptu.
2

Wzór na bieżącą datę i godzinę to =now(). Można tego użyć do utworzenia statycznego znacznika czasu w następujący sposób:

  1. Wprowadź =NOW()komórkę
  2. Skopiuj tę wartość za pomocą CtrlC
  3. Wklej do tej samej komórki za pomocą CtrlShiftV (lub odpowiedników dla „wklej tylko tekst” na innych platformach)
Jennifer
źródło
2
To nie jest znacznik czasu, prawda? Pokazuje tylko bieżącą datę / godzinę otwarcia arkusza kalkulacyjnego, prawda?
ale
1

Arkusze Google go nie obsługują, ale możesz wypróbować inne obejście bez zewnętrznych aplikacji:

  1. Wstaw komentarz ( Ctrl+ M)
  2. Skopiuj znacznik czasu stamtąd ( Ctrl+ Club Ctrl+ X)
  3. Usuń komentarz (kliknij prawym przyciskiem myszy> Usuń)
  4. Wklej znacznik czasu ( Ctrl+ V)

(Jeśli jesteś na MacOS, użyj Cmdzamiast Ctrlza Copy/Cut/Paste, ale Ctrl+ Mza wstawienie komentarza, ponieważ Cmd+ Mminimalizuje okno.)

Lipis
źródło
1

Stworzyłem również skrypt do tego i chciałem formatu, który nie jest dostępny w domyślnych znacznikach czasu (takich jak w =TODAY()lub =NOW()).

To również chwyta strefę czasową na podstawie bieżącej sesji (który jest ustawiony w preferencjach arkusza'S).

function _NOW(input)
{
  // for formatting, see:
  // https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
  var timestamp_format = "yyyy-MM-dd hh:MM a"; // Timestamp Format eg: 2019-04-11 12:04 PM
  var timezone = Session.getScriptTimeZone();
  var date = Utilities.formatDate(new Date(), timezone, timestamp_format);
  return date;
}

Korzystanie z niego jest łatwe:

=_NOW()

Aby wyjaśnić: formatowanie daty wykonałem ręcznie, ponieważ niestandardowe formatowanie daty w Arkuszach Google to stos płonących śmieci (nie ma możliwości ustawienia niestandardowego formatu jako domyślnego, nie ma możliwości zmiany kolejności elementów daty / godziny bez usuwania wszystkiego najpierw i dodając każdą część na raz).

Kyle Falconer
źródło
To okazało się być w tym samym czasie dla każdego wywołania
nhed
@nhed przy każdym wywołaniu tego skryptu (na przykład po otwarciu arkusza kalkulacyjnego) zwróci bieżącą datę w tym formacie jako ciąg. Jeśli chcesz mieć znacznik czasu, który jest trwały, nigdy się nie aktualizuje, możesz umieścić go w komórce i skopiować wartość z tej komórki, a następnie wkleić go tam, gdzie chcesz.
Kyle Falconer
Dodałem skrypt w przeglądarce na pulpicie, a arkusz kalkulacyjny był już otwarty na moim telefonie ... wciąż generował na moim telefonie ten sam znacznik czasu, który był na moim pulpicie ... wymagając, że zamknę i ponownie otworzę, aby dodać punkt danych „t wydają praktyczny ... I połączeniu formatowanie z innej funkcji powyżej, aby uzyskać coś, co pracował dla mnie
nhed
0

Możesz odnieść się do tego samouczka , który również zawiera wideo. W kodzie skryptu zmień

var timestamp_format = "MM-dd-yyyy"; // Timestamp Format.

Domyślnie podaje tylko datę, zmień na poniższy kod, aby uzyskać czas.

var timestamp_format = "MM-dd-yyyy hh:mm:ss"; // Timestamp Format.

Czy tego szukasz? Próbowałem i działa idealnie.

Arpan
źródło
0

tanguay, właśnie to przetestowałem =IF(A2<>"",NOW(),""). Jeśli A2 ma wartość, wówczas wpisuje znacznik czasu. Jeśli A2 jest pusty, znacznik czasu nie jest wprowadzany w kolumnie znacznika czasu.

Howard Riminton
źródło
-1

=if(len(A2)>0;if(B2<>"";B2;now());"")

W Ustawieniach zmień rozwiązanie obwodu na 1, a będzie ono działać bez JavaScript

Vratislav Novák
źródło