Есть автоматика на excel на C#, через раз при сохранении выдает ошибку Ошибка
Unhandled Exception: System.Runtime.InteropServices.COMException: Document not s
aved.
at Microsoft.Office.Interop.Excel._Workbook.SaveAs(Object Filename, Object Fi
leFormat, Object Password, Object WriteResPassword, Object ReadOnlyRecommended,
Object CreateBackup, XlSaveAsAccessMode AccessMode, Object ConflictResolution, O
bject AddToMru, Object TextCodepage, Object TextVisualLayout, Object Local)
Как сохраняю
Workbook.SaveAs(Savefile, Excel.XlFileFormat.xlWorkbookNormal);
Workbook.Close(Type.Missing, Type.Missing, Type.Missing);
oWord.Workbooks.Close();
oWord.Quit();
Нужно сделать, если выдает ошибку то повторить сохранение до тех пор пока не сохранить Почитал что можно сделать через обработку ошибок либо через проверку файла но как я не знаю
Повторять сохранение или нет можно спросить у пользователя программы.
private void buttonOk_Click(object sender, RoutedEventArgs e)
{
bool isNotSaved = SaveToFile();
if (isNotSaved)
{
while (AskRepeatSaving())
{
if (!SaveToFile()) break;
}
}
}
private bool SaveToFile()
{
try
{
//здесь логика сохранения в файл
//...
return false;
}
catch (Exception ex)
{
Debug.WriteLine($"<--Ошибка сохранения в файл: {ex.Message}");
return true;
}
}
private bool AskRepeatSaving()
{
string message = "Возникла ошибка сохранения файла.\nПовторить попытку сохранения?";
string caption = "Ошибка сохранения файла";
var result = MessageBox.Show(message, caption,
MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes);
return result == MessageBoxResult.Yes;
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости