VBAでVisioを操作

あまり好きではないMicrosoft Visioなんだけど、Visioで描かれた仕事資料があってですね。個人的な好みが介入する余地はなく、使わざるを得ないんですね。
Visioの何が嫌いかってVisioのファイルの汎用性。無償のVisioのViewerが配布されてはいるけど、だからOKとは思わない。
で、けっこうな数のあるVisioのファイルを一括でPNGファイルに書き出すVBAを書きましたよ。PDFでないのは軽さが理由。ブラウザ通して簡単に見られる点も。

Sub VSDtoPNG ()
    Set appV = CreateObject("Visio.Application")
    fn = Dir(strPath & "\*.vsd")
    Do While fn <> ""
        appV.Documents.Open strPath & "\" & fn
        set objV = obj.Documents.Item(1)
        For i = 1 To objV.Pages.Count
            objV.Pages(i).Export _
                strPath & "\" & objV.Pages(i).Name & ".png"
        Next i
        objV.Close
        Set objV = Nothing
    Loop
End Sub

だいたいこんな感じ。ココに載せる用に簡略化してます。あしからず。