NonSoft

VBSでエクセルを起動し操作する方法(小技)

 ち〜な〜み〜に〜

VBS(VB SCRIPT/WSH)で手軽にエクセルを起動しいろんな操作をする方法をご紹介します。

エクセルは便利ですね。
表形式の画面を表示するとすぐに、エクセルやCSVに出力したいという要望が発生します。

そのエクセルをVBSで簡単に自動操作すると便利さが2倍以上になると思います。

具体的には以下の事を試しています。
 1.エクセル起動
 2.エクセル非表示
 3.ブック追加
 4.シート選択
 5.カラム幅設定
 6.カラムの書式設定
 7.セルの選択
 8.セルのフォント設定
 9.セルの背景色設定
10.セルの文字色設定
11.エクセル表示
12.エクセルを閉じる

エクセル関係のその他のサンプルはこちらです。
エクセルを使用した帳票印刷のサンプル(VB.NET)
エクセルを使用した帳票印刷のサンプル(C#.NET)
エクセルを操作する小技のサンプル(VB.NET)
エクセルを操作する小技のサンプル(C#.NET)
エクセルを操作する小技のサンプル(VB6)
エクセルへデータをコピーし表示するサンプル(VB6)


★VBSでエクセルを起動しいろいろ操作する方法
' Microsoft Excel起動
Set oXlsApp = CreateObject("Excel.Application")
If oXlsApp Is Nothing Then
    ' Microsoft Excel起動失敗
    MsgBox "Microsoft Excel起動失敗 "

Else
    ' Microsoft Excel起動成功
    ' エクセル非表示
    oXlsApp.Application.Visible = False
    oXlsApp.Application.DisplayAlerts = False

    ' ブック追加
    oXlsApp.Application.Workbooks.Add

    ' シート選択
    Set oSheet = oXlsApp.Worksheets(1)

    ' カラム幅設定
    oSheet.Columns("C").ColumnWidth = 20

    ' カラムの書式設定の表示形式を文字列にする
    oSheet.Columns("C").NumberFormatLocal = "@"

    ' セル選択
    Set oRange = oSheet.Range("C10")

    ' セルのフォント設定
    oRange.Font.Size = 9
    oRange.Font.Name = "MS ゴシック"

    ' セルにデータ書込み
    oRange.Value = "C10のデータ"

    ' セルの背景色設定
    oRange.Interior.Color = &H44FFFF

    ' セルの文字色設定
    oRange.Font.Color = &HFF0000

    ' エクセル表示
    oXlsApp.Application.Visible = True

    ' エクセルを閉じる
    'If oXlsApp Is Nothing = False Then oXlsApp.Quit
    'Set oRange = Nothing
    'Set oSheet = Nothing
    'Set oXlsApp = Nothing
End If