2012年8月15日水曜日

ExcelのVBA(保存用ボタンを作る)

はっきりいって使い方として邪道だとは思うんですが、Excelのシートで各種プログラムの設定ファイルなんかを操作したくなります。(自分ならSakuraエディタでやるほうが好きなんですが、普通の人にはテキストエディタはちとハードルが高い)
それならばと日本人には使い慣れたEXCELでテキストファイルを保存するようにすればいいでしょうと、ちょっとVBAマクロを調べてみました。意外と簡単にできました。


Sub Save()
    fnsave = "MMM\Setting.txt"
    numff = FreeFile
    Open fnsave For Output As #numff
    For i = 1 To 2
        temp1 = Cells(i, 1)
        temp2 = Cells(i, 2)
        Print #numff, temp1, temp2
    Next i
    Close #numff
End Sub

Sub Save2()
    fnsave = "initialize.txt"
    numff = FreeFile
    Open fnsave For Output As #numff
    For i = 1 To 2
        temp1 = Cells(i, 1)
        temp2 = Cells(i, 2)
        Print #numff, temp1, temp2
    Next i
    Close #numff
End Sub

スクリプトが2個作ってありますが、それぞれのシートにボタンを張っておき、それぞれのスクリプトを設定するだけです。EXCELのBookの位置を基準にフォルダもかえて保存できちゃいます。これなら普通の人でもプログラムの設定を簡単にできるでしょう。(GUIつくるのがいいんだけど、社内ツールなんでそこまで金をかけちゃいられない)
ただOffice2010でやったんですが、マクロ作成の「開発」機能がデフォルトでオフになっていて、メニューの結構深いところにいってオンにしないとだめなんですね。ちょっとびっくりしました。

0 件のコメント:

コメントを投稿