Проблема с открытием книги Excel с помощью Excel Interop - PullRequest
1 голос
/ 06 мая 2010

Я пишу приложение на C # для открытия существующей книги Excel с помощью Excel Interop. Все отлично работает Я могу читать и писать хорошо. Я не сохраняю книгу до тех пор, пока пользователь не закроет приложение C #. Проблема возникает, когда моя программа работает, и пользователь случайно открывает ту же книгу с Excel. Я получаю ошибку:

Исключение из HRESULT: 0x800401A8

в этой строке

Диапазон excelRange = worksheet.UsedRange;

Есть ли способ заблокировать книгу и не позволить пользователю открыть ее в Excel во время работы моей программы?

Спасибо

1 Ответ

1 голос
/ 06 мая 2010

Возможно, есть какой-то лучший способ сделать это, но я могу думать только о том, чтобы:

  1. Скопируйте файл Excel во временную папку
  2. Заблокируйте файл в исходном местоположении, чтобы никто не мог получить к нему доступ.
  3. Работа с временным файлом.
  4. Сохраните и закройте временный файл.
  5. Разблокировать и удалить оригинальный файл.
  6. Скопируйте временный файл в исходное местоположение.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...