[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2007/08/01(Wed) 13:19
投稿者名:神威
Eメール:
URL :
タイトル:
マクロ付きExcelの保存 Excel2007
度々投稿させていただきます。

マクロが組み込まれているExcelファイルを保存を行おうとしているのですが
現在下記のような処理を行っております。

Set xlApp = CreateObject("Excel.Application")
    xlApp.EnableEvents = True '   マクロ有効
    Set xlBook = xlApp.Workbooks.Open(Wk_Path)  'Wk_Pathを開く
    Set xlSheet = xlBook.Worksheets(1)     '最初のシートを選択

書き込み処理

    xlApp.DisplayAlerts = False
    xlSheet.SaveAs Wk_Path            'ファイルを保存

と行っているのですが、Excel2000,2003ではマクロが付いた状態で保存されるのですが
Excel2007を使用している端末ではマクロが消えてしまいます。

何か保存する際に、違う命令が必要なのでしょうか?

よろしくお願いいたします。

投稿時間:2007/08/01(Wed) 13:50
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: マクロ付きExcelの保存 Excel2007
> Excel2007を使用している端末ではマクロが消えてしまいます。

SaveAs の第二引数を、明示的に指定してみてください。

これは、Excel 2007 でいうところの
[Office ボタン]-[名前を付けて保存]-[その他の形式] メニューから、
ファイルの種類を指定することに相当します。

投稿時間:2007/08/01(Wed) 14:03
投稿者名:神威
Eメール:
URL :
タイトル:
Re^2: マクロ付きExcelの保存 Excel2007
> > Excel2007を使用している端末ではマクロが消えてしまいます。
>
> SaveAs の第二引数を、明示的に指定してみてください。
>
> これは、Excel 2007 でいうところの
> [Office ボタン]-[名前を付けて保存]-[その他の形式] メニューから、
> ファイルの種類を指定することに相当します。

ご返信ありがとうございます。

魔界の仮面弁士さんのご指摘いただいた方法ですと、
Excelマクロ有効ブック形式で保存するということでしょうか?
この形式で保存をした場合、Excel2007ではファイルを参照できると思うのですが
Excel2003では参照できなくなるのではないでしょうか?
保存したファイルをExcel2007,Excel2003双方から参照したいのですが
その場合は、この方法でできるのでしょうか?
よろしくお願いいたします。

投稿時間:2007/08/01(Wed) 14:45
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^3: マクロ付きExcelの保存 Excel2007
> Excelマクロ有効ブック形式で保存するということでしょうか?
いえ、それ以外の形式も選択できますよね。
単純に xls 形式で良いと思いますけど。マクロも記録できますし。

> この形式で保存をした場合、Excel2007ではファイルを参照できると思うのですが
> Excel2003では参照できなくなるのではないでしょうか?
互換性パックが用意されているので、2003 であっても xlsx / xlsm を参照できますよ。
まぁ、xls で保存するのが無難だとは思いますけれども。

投稿時間:2007/08/01(Wed) 15:21
投稿者名:神威
Eメール:
URL :
タイトル:
Re^4: マクロ付きExcelの保存 Excel2007
Save As メソッドで第2引数を設定したところ
マクロが残った形で保存することができました。

ありがとうございました。