Вы можете указать смещение часового пояса на new Date()
, например:
new Date('Feb 28 2013 19:00:00 EST')
или
new Date('Feb 28 2013 19:00:00 GMT-0500')
Поскольку Date
сохраняет время UTC (т. е. getTime
возвращается в UTC), javascript преобразует время в UTC, и когда вы вызываете такие вещи, как toString
, javascript преобразует время UTC в локальный часовой пояс браузера и возвращает строку в локальном часовом поясе, то есть, если я использую UTC+8
:
> new Date('Feb 28 2013 19:00:00 GMT-0500').toString()
< "Fri Mar 01 2013 08:00:00 GMT+0800 (CST)"
Также вы можете использовать обычный метод getHours/Minute/Second
:
> new Date('Feb 28 2013 19:00:00 GMT-0500').getHours()
< 8
(Этот параметр 8
означает, что после преобразования времени в мое местное время - UTC+8
, число часов - 8
.)
Я думаю, что вы хотите этого (и вы неправильно расставили колонки A и B)
Sub LoopAndDisplay
Dim r as range
For each r in range("C2:Z200")
If cells(1,r.column) = cells(r.row,2) then 'if date above matches column B then
r = cells(r.row,1) 'display contents of column A
End If
Next R
End Sub