Я хочу создать электронную таблицу Excel из приложения .NET, а затем установить текущий каталог экземпляра Excel.Application в пользовательскую папку.Я хочу сделать это так, когда пользователь нажимает кнопку «Сохранить» в Excel, диалоговое окно «Сохранить как» уже находится в правильном каталоге.
Я знаю, что можно изменить текущий каталог в экземпляре Excel с помощью VBA.FileSystem..ChDir и выполняем его в экземпляре Excel.Application с кодом или макросом VBA следующим образом:
Создание электронной таблицы Excel из C # .NET
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
excel.Workbooks.Add();
excel.Visible = true;
Когда электронная таблица Excel открыта, нажмите ALT + F11.Затем создайте и запустите следующий макрос
Sub SetChdir()
Call FileSystem.ChDir("C:\To\My\Custom\Directory\")
End Sub
При нажатии кнопки Сохранить в Excel текущему каталогу задается путь, заданный с помощью ChDir
Я могу 'не могу понять, или даже если это возможно, как создать такое поведение из .NET.Я устал возиться с Excel.DefaultFilePath, который Excel использует при запуске для установки текущего каталога.Но у него есть две проблемы:
- Когда для DefaultFilePath задано другое значение, вам нужно перезапустить Excel, чтобы применить его к новым или открытым таблицам
- Я действительно не хочуизменить текущий DefaultFilePath пользователей, поскольку он является глобальным значением для Excel, а не этой отдельной электронной таблицы.