プロが教えるわが家の防犯対策術!

Excel 2003を使用しております。

VBAで以下のように保存ダイアログを表示させたときの
「ファイルの種類」をxlsだけにしたいのですが
どうすればいいのでしょうか?

Application.Dialogs(xlDialogSaveAs).Show

A 回答 (4件)

No2です ごめんなさい


こっちが正解です

Sub test1()
xlFName = Application.GetSaveAsFilename(, "Excel (*.xls), *.xls")
If xlFName <> False Then
Call ActiveWorkbook.SaveAs(xlFName)
End If
End Sub
    • good
    • 2

こんばんは。



>「ファイルの種類」をxlsだけにしたいのですが

Application.Dialogs(xlDialogSaveAs).Show ,1
しかし、選択肢は、残っています。


通常は、このようなコードにして行います。


------------------------------
Dim Fname As Variant

Fname = Application.GetSaveAsFilename(ActiveWorkbook.Name, "Microsoft Office Excel ブック(*.xls), *.xls")
If VarType(Fname) = vbBoolean Or Fname = "" Then Exit Sub
ActiveWorkbook.SaveAs Fname
---------------------------------
    • good
    • 1

ダイアログより GetSaveAsFilename のほうがいろいろ出来て


使いやすいと思います。

例を書きますね
Sub test1()
xlFName = Application.GetSaveAsFilename(, "Excel (*.xls), *.xls")
If xlFName <> False Then
Call Workbook.SaveAs(xlFName)
End If
End Sub
    • good
    • 0

保存先はユーザーに選択させますか?


固定ですか?

固定でしたらInputBoxやテキストボックスなどで
名前を入力させ、入力した名前に".xls"を付け加えて
保存します。

保存先が固定で無いのでしたら、
CreateObject("Shell.Application").BrowseForFolder
などで保存先を選択させ、
その次に名前を入力させる。

としてはいかがでしょう?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!