Strona 1 z 1
Data i Godzina
: śr lip 30, 2014 1:22 pm
autor: jawor92
W jaki sposób dodać datę i godzinę nie używając funcji Teraz(). Ponieważ ona zmienia czas po każdym uruchomieniu arkusza a prowadzona w danym arkuszu jest statystyka. I właśnie nie wiem jakie funkcji użyć.
Re: Data i Godzina
: śr lip 30, 2014 2:13 pm
autor: Jermor
Wpisz do komórki wymaganą datę, np. 2014.07.29. Na podstawie wpisu arkusz zinterpretuje wprowadzony ciąg jako datę i sam zmieni format tej komórki na format daty. Jeśli w tej samej komórce wstawiasz także czas to po dacie wpisujesz spację i w dalszym ciągu godzinę np 13:15. Razem wygląda to np. tak 29.7.14 13:15. Pamiętaj. że na podstawie wpisanej daty przypisane jest formatowanie. Jeśli wpiszesz datę 2014-7-29, przypisane zostanie formatowanie RRRR-MM-DD. Jeśli w tej komórce wpiszesz (poprawisz) wpis na 2014-7-29 13:15 nic się nie zmieni w widoku komórki, bo formatowanie ma pokazywać tylko datę, ale zapamiętana w komórce wartość zawierać będzie także info o czasie.
Masz oczywiście funkcję DATA(rok;miesiąc;dzień), CZAS(godzina;minuta;sekunda) i wiele pochodnych
Re: Data i Godzina
: śr lip 30, 2014 2:26 pm
autor: jawor92
Tak wiem ale chodzi mi o to czy jest szansa dodać z automatu ponieważ chciałbym napisać funkcję która po wpisaniu nazwiska automatycznie uzupełniała się komórka z data i godziną. I tu właśnie tu jest pies pogrzebany ponieważ gdy użyje funkcji TERAZ()/NOW() to po kazdym uruchomieniu arkusza data sie zmienia.
Re: Data i Godzina
: śr lip 30, 2014 4:01 pm
autor: Jermor
Według mojej wiedzy takiej funkcji nie ma. A jeśli tak jest to trzeba by napisać sobie makro.
Re: Data i Godzina
: śr lip 30, 2014 4:05 pm
autor: jawor92
Napisałem dwie funkcje które maja dodać datę i godzinę. Lecz tak jak przy funkcji TERAZ() zmienia sie godzina przy kazdym uruchomieniu to samo z czasem.
Kod: Zaznacz cały
Function DAT()
DAT = Format(Date, "dd.MM" )
End Function
Function GOD()
GOD = Format(Time, "hh:mm")
End Function
Re: Data i Godzina
: śr lip 30, 2014 4:59 pm
autor: belstar
Masz trzy wyjścia:
1. Użyć skrótu Ctrl+;, wstawia bieżącą datę i godzinę, musisz odpowiednio sformatować komórkę. To samo osiągniesz skrótem Ctrl+Shift+;, z tą różnicą że komórka jest formatowana na czas.
2. Napisać makro i użyć listenera, poszukaj na forum.
3. Jan_J wstawił gdzieś na forum rozszerzenie do wstawiania daty, poszukaj.
Re: Data i Godzina
: śr lip 30, 2014 5:49 pm
autor: Jermor
Napisałem takie makro
Kod: Zaznacz cały
Sub dn
Rem Procedura w aktualnej komórce wstawia bieżącą datę
Rem a w komórce obok bieżący czas
'-----------------------------------------------------------
Dim oSelectedCells as Object, oActiveCell as Object, oArk as Object, oWbok as Object
Dim tData as Date, tCzas as Date
Dim iWiersz as Long, iKol as Long 'Na wypadek gdyby liczby wierszy i kolumn były > 32000
Dim iArk as Integer
oSelectedCells = ThisComponent.CurrentSelection
oActiveCell = oSelectedCells.CellAddress
iWiersz=oActiveCell.row 'określa aktualny wiersz
iKol=oActiveCell.column 'określa aktualną kolumnę
iArk=oActiveCell.Sheet 'określa aktualny arkusz
tData=Date 'pobiera datę z kompa
tCzas=Time 'Pobiera czas z kompa
oSelectedCells.setValue(tData) 'wstawia datę do bieżącej komórki
oArk = ThisComponent.getSheets().getByIndex(iArk)
oWbok = oArk.GetCellbyPosition( iKol+1, iWiersz ) ' wiersz poprzedni i ten ustala położenie komórki obok
oWbok.setValue(tczas) 'wstawia do komórki obok czas
End Sub
Komórki trzeba sobie sformatować samodzielnie.
Do makra można przypisać skrót klawiaturowy.
Pozdrawiam
Re: Data i Godzina
: czw lip 31, 2014 7:24 am
autor: Smaigas
Bez makr.
Włączyć iteracje: Tools>Options->LibreOffice Calc->Calculate zaptaszyć Iterations (W Apache Openoffice może wyglądać inaczej)
Pozdrawiam
Witalik
Re: Data i Godzina
: wt sie 12, 2014 3:04 pm
autor: Jan_J
Smaigas pisze:Bez makr. Włączyć iteracje
Odradzam. Opcja dotyczy bieżącego konta i nie propaguje się z dokumentem, a wyłącza się ją łatwo w dowolnym momencie. Tym samym poprawność obliczeń będzie zależeć od bieżących ustawień pakietu, to znaczy w praktyce będzie nieprzewidywalna. Skutki mogą być bardzo przykre.