5

Google App e-tablosunda 'dd/mm/yyyy' biçiminde ve 'HH: MM AM/PM' biçiminde Zaman sütununda bir Tarih sütunu yapıyorum. Uygulama komut dosyasında, bu 2 değeri bir datetime olarak katılmak istiyorum. Bunu nasıl yapabilirim?Google Apps Spreadsheet komut dosyasında tarih ve saati tarih aralığı olarak nasıl birleştirirsiniz?

Örnekleme tarihi: 13/12/2010, time: 04:30 Daha sonra datetime nesnesi olarak '13/12/2010 4:30 PM 'gibi birleşik bir değer elde etmek istiyorum.

Tarih ve saati getYear, getDay JS işlevlerini kullanarak ayrı ayrı ayrıştırmayı denedim. Ve

new Date(year, month, day, hours, minutes) 

kullanarak yeni bir tarih yarattı Ama nedense süre '4:30' için 30 Kasım 1899 10:30 gibi tam bir garip tarih olarak gösteriliyor. Yıl, gün ve ayları doğru bir şekilde çıkarabilirim ama saat ve dakikaları değil.

cevap

3

Bu, this Google Apps forum içeriğinde yanıtladı.

"İlk olarak, tarih ve saat (biçimlendirmenin yanı sıra) arasında bir fark yoktur, hepsi Tarih nesneleridir. Şimdi sorun için .. Elektronik tablonun tarih/saat değeri olan sayıdır. "epoch" den bu yana geçen gün sayısı, yani "time" aslında sayının ondalık kısmıdır. E-tablonuzda 0 (sıfır) yazarsanız ve sonra datetime formatını seçerseniz, dönemin "12" olduğunu görürsünüz./30/1899 0:00:00 "e-tablodaki geçerli saat diliminde, yani farklı zaman çizelgeleriyle yapılandırılmış farklı elektronik tablolarda, dönem değişebilir. Aynı sayı değerini iki e-tabloda (örneğin ImportRange kullanarak) kullanırsanız Farklı bir davranış Benim için çok garip bir davranış.Bu her zaman böyle değildi, ama google bunun daha iyi olduğunu düşünür gibiydi, çünkü e-tablo zaman dilimi ayarlarını değiştirirse, tarihler görsel olarak değişmez, ör. E-tabloya "1/1/10 14:00" yazarsanız ve ardından saat dilimini herhangi birine değiştirirseniz tarih/saat değişmez. Yeni saat diliminde saat 14:00 olacak.

Şimdi, GAZ'da, dönem "şimdi 1/1/1970 0:00:00 GMT + 0", artık zaman dilimi. Yani, çağ farklı ve büyük olasılıkla zaman dilimi de. Bu, çalışma tarihlerini GAS ve elektronik tablo arasında bir toplam karmaşa yapar. GAS dönemini test etmek için range.setValue (yeni Tarih (0)) yapın; "

İlgili konular