• 締切済み

SQLサーバーの日付を取得 - Excel VBAにて -

お世話になります。 EXCELのVBAで、 SQLサーバーのシステム日付を取得することは可能でしょうか? コマンドを教えていただきたいのですが。 クライアントPCのシステム日付は、 Biosの電池切れ?等で時々正常でない場合があります。 その問題を解決するため、都度サーバー日付を取得することが できれば、と考えています。 よろしくお願いします。

みんなの回答

  • wingtodo
  • ベストアンサー率56% (9/16)
回答No.4

MicrosoftSQLサーバーでしたら システム日付は SELECT GETDATE() で取得できます。

  • tom11
  • ベストアンサー率53% (134/251)
回答No.3

こんにちは、SQLサーバと繋いでいるのでしたら、 SQLが、使えますよね。 select now() でも、実行しては、いかがでしょか。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

例えば、WSHを使って以下のようにして、NET TIMEの結果を得ることができます。 後は、適当に切り出せば良いと思います。 ---------------------------------------------------------------- Public Sub test() Dim WshShell, oExec, result Set WshShell = CreateObject("WScript.Shell") Set oExec = WshShell.Exec("NET TIME \\SERVERNAME") Do While oExec.Status = 0 '実行終了まで待つ Loop result = oExec.StdOut.ReadLine MsgBox result End Sub

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

EXCEL VBAからというより、 システム日付は、PC全体でも(ファイル管理など)重要なので 起動時に時刻合わせするようにした方がいいかと思います。 Windows系のサーバーの場合 NET TIME \\SERVERNAME /SET のようなコマンドを実行するバッチを作成して、スタートアップで実行するような感じにしておけば良いと思います。

nao_ton_v
質問者

補足

ありがとうございます。 おっしゃることはよくわかります。私も同じことを考えましたが、対象PCが200台~という状況なので現実的に難しいですね。 VBAにて、取得する方法を募集させていただいております。

関連するQ&A