VBScript 【活用編】



目次


Excel操作

Excelに文字列を入力する処理について解説します。

プログラムソース

Option Explicit

Dim objXLS, objBook, strFileName

Set objXLS = Wscript.CreateObject("Excel.Application")

Set objBook = objXLS.WorkBooks.Add

strFileName = "C:\Users\home\Desktop\Excel操作.xlsx"
objBook.SaveAs(strFileName)

Set objBook = objXLS.Workbooks.Open(strFileName)

objBook.Worksheets(1).Cells(1,1).Value = "VBScript“

objBook.Save
objBook.Close
objXLS.Quit

Set objBook = Nothing
Set objXLS = Nothing

解説

Excel.Application

Excel操作に使用するオブジェクト

オブジェクト.WorkBooks.Add

Excelブックを新規作成します。

オブジェクト.SaveAs(ファイル名)

Excelブックに名前を付けて保存します。

オブジェクト.WorkBooks.Open(ファイル名)

ファイル名を指定してExcelブックを開きます。

オブジェクト.Worksheets(インデックス).Cells(行,列)

左から1番目のシートのA1セルを指定します。

オブジェクト.Save

Excelブックを上書き保存します。

オブジェクト.Close

Excelブックを閉じます。

オブジェクト.Quit

Excelを終了します。


Excel PDF変換

ExcelをPDF形式で出力する処理について解説します。

プログラムソース

Option Explicit

Dim objXLS, objBook, strFileName, strPDFName

Set objXLS = Wscript.CreateObject("Excel.Application")

strFileName = "C:\Users\home\Desktop\Excel操作.xlsx"
Set objBook = objXLS.Workbooks.Open(strFileName)

strPDFName = "C:\Users\home\Desktop\Excel操作.pdf"
objBook.ExportAsFixedFormat 0, strPDFName

objBook.Close
objXLS.Quit

Set objBook = Nothing
Set objXLS = Nothing

解説

オブジェクト.ExportAsFixedFormat 出力形式 ファイル名
出力形式
 0 : PDF形式
 1 : XPS形式

ExcelブックをPDF形式/XPS形式で出力します。


メール送信

メールを送信する処理について解説します。

プログラムソース

Option Explicit

Dim objMsg, strConfField

Set objMsg = CreateObject("CDO.Message")
objMsg.From = 差出人アドレス
objMsg.To = 宛先アドレス
objMsg.Subject = "タイトル"
objMsg.TextBody = "メッセージ"

strConfField="http://schemas.microsoft.com/cdo/configuration/"
With objMsg.Configuration.Fields
   .Item(strConfField & "sendusing") = 2
   .Item(strConfField & "smtpserver") = "smtp.gmail.com"
   .Item(strConfField & "smtpserverport") = 465
   .Item(strConfField & "smtpauthenticate") = 1
   .Item(strConfField & "smtpusessl") = true
   .Item(strConfField & "sendusername") = アカウント
   .Item(strConfField & "sendpassword") = パスワード
   .Update
End With

objMsg.Send
Set objMsg = Nothing

解説

CDO.Message

メール送信に使用するオブジェクト

オブジェクト.Send

メールを送信します。


Webデータ収集

InternetExplorerを利用して、Webサイトのデータを収集する処理について解説します。

プログラムソース

Option Explicit

Dim objIE, colResult, strResult, i

Set objIE = CreateObject("InternetExplorer.Application")
objIE.Visible = False

objIE.Navigate "https://www.google.co.jp"
WScript.sleep(500)

objIE.Document.getElementsByTagName("input")(3).Value = "VBScript"
objIE.Document.getElementsByTagName("input")(4).Click
WScript.sleep(500)

Set colResult = objIE.Document.getElementsByTagName("h3")

For i = 0 to colResult.length -1
   strResult =  strResult & colResult(i).textContent & vbCrLf
Next
MsgBox strResult 

Set colResult = Nothing
objIE.Quit
Set objIE = Nothing

解説

InternetExplorer.Application

IE操作に使用するオブジェクト

オブジェクト.Visible=False

IEを非表示にします。

オブジェクト.Navigate URL

指定したURLをIEに表示します。

オブジェクト.Document.getElementsByTagName(タグ名)

指定したタグ名の要素を取得します。