アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excelで勤怠管理を考えています。ウェブ上から現在の日時を取得できるマクロを探しています。
個人のPC上から取得する方法だと個人個人のPCで日時を操作できてしまうのでだめです。
よろしくお願いいたします。

A 回答 (3件)

|ω・`)っ「Power Query」

    • good
    • 0

こんにちは



使用環境がわかりませんが、サーバに接続できているならそのサーバから時刻を取得するのが良さそう。
http://www.gizcollabo.jp/vbtomo/log/archive/vbqa …

Web経由がよければ、NICTから標準時を取得できます。
以下のページから「技術情報」や「公開サービス」のページに行けば解説が見られます。
https://www.nict.go.jp/JST/JST5.html
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。2番目の方法について、考えていますが当方、マクロがほとんど分かりません。
2番目の方法について下記の様なExcelマクロを見つけてあと一歩のところです。
下記のマクロだとマクロ実行の結果がメッセージボックスで表示(下記マクロ5行目あたり)されてしまいます。
これをエクセルのアクティブセルに表示出来れば上手くいく所まで来ています。
ご教授お願い出来ないでしょうか。


Public Sub 標準時()
Dim dt As Date

dt = GetJST()
If dt = CDate(0) Then Exit Sub
MsgBox "現在の時刻は [" & Format(dt, "yyyy年m月d日 h時n分s秒") & "] です。", _
vbInformation + vbSystemModal, _
"日本標準時"
End Sub

Private Function GetJST() As Date
'NICTのサーバーから日本標準時取得
'※同一IPからのアクセスは1秒以上の間隔を空けること
' http://www.nict.go.jp/JST/http.html
Dim js As String
Dim d As Object, elm As Object
Dim dt As Date
Const api_url As String = "https://ntp-a1.nict.go.jp/cgi-bin/json"

On Error Resume Next 'エラー処理は手抜き
'JSON取得
With CreateObject("WinHttp.WinHttpRequest.5.1")
.Open "GET", api_url, False
.Send
Select Case .Status
Case 200: js = .ResponseText
Case Else: GoTo Fin
End Select
End With

下記省略

お礼日時:2020/06/20 16:20

No2です。



>メッセージボックスで表示されてしまいます。
変数dtにシリアル値が取得できているのですから、表示する代わりにセルに代入すれば良いのではないでしょうか。

>アクティブセルに表示出来れば
内容が不明なのでわかりませんが、値の対象は固定のセルではないのでしょうか?
「アクティブセル」というのは、あまりいただけないような気がしますけれど。
    • good
    • 0
この回答へのお礼

おかげさまで解決しました。ありがとうございました。

お礼日時:2020/06/21 02:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!