如何用vb实现保存文件的对话框

我想通过VB完成对某一目录下文件的“另存为”操作,要求能够自己决定存储目录、不必显示该原始文件的名字,只要求能选择存储目录即可,是个EXCEL文件。谢谢

VB使用CommonDialog控件(“打开”、“另存为”对话框)来实现。

    CommonDialog控件(“打开”、“另存为”对话框),通过使用 CommonDialog 控件的 ShowOpen 和 ShowSave 方法可显示“打开”和“另存为”对话框。

    两个对话框均可用以指定驱动器,目录,文件扩展名和文件名。除对话的标题不同外,另存为对话外观上与打开对话相似。

    在运行时,当用户选择一个文件“关闭”对话框时,FileName 属性既为选定的文件名。

    CommonDialog控件(“打开”、“另存为”对话框)示例

    下例显示“打开”对话框然后在信息框中显示所选的文件名:

    Private Sub Command1_Click()

    ' 设置“CancelError”为 True

    CommonDialog1.CancelError = True

    On Error GoTo ErrHandler

    ' 设置标志

    CommonDialog1.Flags = cdlOFNHideReadOnly

    ' 设置过滤器

    CommonDialog1.Filter = "All Files (*.*)|*.*|Text Files" & _

    "(*.txt)|*.txt|Batch Files (*.bat)|*.bat"

    ' 指定缺省的过滤器

    CommonDialog1.FilterIndex = 2

    ' 显示“打开”对话框

    CommonDialog1.ShowOpen

    ' 显示选定文件的名字

    MsgBox CommonDialog1.filename

    Exit Sub

    ErrHandler:

    ' 用户按了“取消”按钮

    Exit Sub

    End Sub

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-01-13
直接加一个通用对话框控件CommonDialog,这个控件支持打开、另存为功能。点击工程菜单中的部件选项,然后选择microsft common dialog control6.0,再按确定。将对话框画一个到窗体上然户就可以直接写代码编程的了。
比方说:
private sub command1_click() '另存
dim filename_select as string
commondialog1.dialogtitle="请选择要另存的文件名"
commondialog1.initdir="c:\" '缺省打开路径
commongdialog1.filter="Execl|*.els"
commondialog1.showsave '保存文件
filename_select=commondialog1.filename ‘文件名
end sub追问

这个能把想另存为(test.xls)的文件找到,但是点击“保存”后没反应,而且也没弹出选择存储位置的框呢?

追答

你加了控件没有,请看:

这个只是提供一个保存的文件名啊,filename_select就是保存这个文件的全路径,你按这个位置保存你的EXECL文件即可。

本回答被提问者和网友采纳
相似回答