我有一个用户按下并向Excel发送网格的按钮,它将文件保存在我不希望用户有权访问的目录中。 (这是一个隐藏的共享)然后它立即打开文件供用户查看。
我正在使用Microsoft.Office.Interop.Excel命名空间,所以我使用的是Excel应用程序和工作簿。
我希望应用程序从目录中打开文件,但如果用户选择使用SaveAs保存文件(我希望如果用户单击“保存”,则将其视为新文件并打开SaveAs对话框),我想初始目录是类似C:。
以下是一些相关代码:
Public Sub sendToExcel()
'Code here that exports data to Excel
Dim xlApp As Excel.Application = New Excel.Application()
Dim xlWorkbook As Excel.Workbook = xlApp.Workbooks.Open(filePath)
xlApp.Visible = True
End Sub
我尝试过的最明显的事情就是:
xlApp.DefaultFilePath = "C:\"
这似乎只有在文件是新的(尚未保存)时才有效。
有什么建议吗?
答案 0 :(得分:0)
文件是否必须保存在隐藏的共享中?
如果没有,您可以使用Path.GetTempFileName()
将其保存在用户的临时文件夹中,然后从那里用Excel打开它。
这样,当他们“另存为”时,他们只会看到本地临时文件夹作为来源。
当然,这只适用于桌面应用程序。