0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

vbsでyyyymmddを手軽に使おうとする

Last updated at Posted at 2020-06-08

自身のリファレンスとして使用させていただきます

とりあえず、扱いやすい関数として記述するよう別ファイル化。コピーしてソースを書いていく形にする。

Option Explicit
Include("C:\hoge\vbs\yyyymmdd.vbs")'読み込みたいvbsファイルのフルパス
'=====================
'ソースコード
msgbox yyyymmdd(now())

'=====================
'読み込んだvbsのクイックリファレンス

'mm(date)	//放り込んだdateの日付をmmで戻す
'dd(date)	//放り込んだdateの日付をmmで戻す
'yyyymmdd(date)	//放り込んだdateの日付をyyyymmddで戻す

'=====================
Function Include(full_path)
	Dim objFso, objWsh
	Set objFso = Wscript.CreateObject("Scripting.FileSystemObject")
	Set objWsh = objFso.OpenTextFile(full_path)
	ExecuteGlobal objWsh.ReadAll()
	objWsh.Close
	Set objWsh = nothing
	Set objFso = nothing 
End Function

そしたら、中身を適当に書いていく。

function dd(date)
	dd = mid(date,9,2)
end function

function mm(date)
	mm = mid(date,6,2)
end function

function yyyymmdd(date)
	yyyymmdd = year(date) & mm(date) & dd(date)
end function

この一手間だけでソースの可読性がかなり変わるので、個人的にオススメ。

オブジェクトを呼び出して、色々やって、戻ってくるという動作をする関数なんかも

function exist(path)
	Set objFso = CreateObject("Scripting.FileSystemObject")
	exist = objFso.FileExists(path) or objFso.FolderExists(path)
	'パスに書かれたファイルかフォルダがあるならtrue
	Set objFso = nothing
end function

みたいにすれば、かなり適当に分かりやすく欲しい機能だけ取り出せるようになります。

※VBSを読み込む ExecuteGlobal は、暴走すると危ないので、使用は自己責任でお願いします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?