2
我正在使用Application.Path创建SQL文件& SQL_statements.After我通过vba.Now将SQL语句写入此文件我想保存所有SQL后的文件语句生成在不同的目录中。该目录取决于用户。因此,我想给他一个另存为对话框。因此,我需要保存通过vba创建的文件,并使用另存为对话框将其保存为用户指定的位置,并删除由我创建的文件的副本。如何在Excel中使用保存对话框保存SQL文件
我正在使用Application.Path创建SQL文件& SQL_statements.After我通过vba.Now将SQL语句写入此文件我想保存所有SQL后的文件语句生成在不同的目录中。该目录取决于用户。因此,我想给他一个另存为对话框。因此,我需要保存通过vba创建的文件,并使用另存为对话框将其保存为用户指定的位置,并删除由我创建的文件的副本。如何在Excel中使用保存对话框保存SQL文件
我想你想要Application.GetSaveAsFilename。这是一个例子。
Sub Test()
Dim sFile As String
Dim lFile As Long
Dim sSql As String
sFile = Application.GetSaveAsFilename(, "*.txt,*.txt", , "Save SQL File")
If sFile <> "False" Then
sSql = "Select * from abc"
lFile = FreeFile
Open sFile For Append As lFile
Print #lFile, sSql
Close lFile
End If
End Sub
sFile将是一个字符串,它是完整的路径和名称。我不知道什么是“SQL文件”,所以我猜想它是一个带有sql扩展名的文件。如果用户单击对话框上的取消,sFile将会是“False”。
要复制的文件,它已经创建
Sub TestCopy()
Dim sNewFile As String, sOldFile As String
Dim lFile As Long
Dim sSql As String
sNewFile = Application.GetSaveAsFilename(, "*.txt,*.txt", , "Save SQL File")
If sNewFile <> "False" Then
sSql = "Select * from abc"
sOldFile = "C:\Book1.txt"
lFile = FreeFile
Open sOldFile For Append As lFile
Print #lFile, sSql
Close lFile
FileCopy sOldFile, sNewFile
End If
End Sub
后,您将有两个文件结束了 - 一个在C:\ Book1.txt和一个在用户选择。
如何保存我的文件。我是vba的新手。不知道很多东西可能是普通的 – gizgok 2010-09-07 18:44:09
它是什么类型的文件? Excel文件?文本文件?你是如何创建它的? – 2010-09-07 19:00:11
这是textfile,我是这样创建的。 – gizgok 2010-09-07 19:13:46