Сохранение не VSTO копии рабочей книги VSTO - PullRequest
4 голосов
/ 01 сентября 2009

Я пытаюсь сохранить ListObject из .NET 3.5 Excel 2007 VSTO Workbook на новый лист (готово) и сохранить этот новый лист в новую книгу (готово) без этой книги, требующей файл настройки VSTO (!!! !!).

Кому-нибудь повезло с этим? Единственный способ добиться успеха - просто сохранить как файл CSV, но в данном случае это не совсем приемлемо. Я бы предпочел не сохранять в CSV, чтобы просто скопировать обратно в файл XLS.

рабочий лист.SaveAs (saveDialog.FileName, Excel.XlFileFormat.xlOpenXMLWorkbook)

Ответы [ 2 ]

5 голосов
/ 01 сентября 2009

Если я правильно понимаю, вы не хотите, чтобы новый файл рабочей книги зависел или загружал какие-либо настройки VSTO?

Попробуйте ссылку MSDN , чтобы удалить сборки настройки VSTO из рабочих книг.

1 голос
/ 02 сентября 2009

Хорошо, это не сработало для меня, и вот почему. Ответ все еще правильный, но я хочу уточнить для будущих пользователей.

У меня есть ListObject, который я хотел сохранить во внешней книге с помощью VSTO. Создание новой рабочей таблицы и использование SaveAs переименует текущую рабочую книгу в эту, и поэтому мне придется закрыть всю рабочую книгу, чтобы удалить настройку.

То, что я должен был сделать с самого начала, это:

Создайте Рабочий лист и заполните ListObject на указанном Рабочем листе. Затем используйте .Copy () без параметров, чтобы создать новую книгу. Как тогда найти книгу? Я просто назвал Worksheet Now.Ticks.ToString () и искал любую открытую книгу с ActiveSheet.Name как Now.Ticks.ToString (). Для этого приложения не нужно быть более глубоким, чем это. Я сохранил ЭТО рабочую книгу, а затем закрыл ее. Поскольку рабочая книга была создана с помощью функции копирования, на ней не было настроек, и проблема решена.

...