Задать вопрос
@ArtemSh51

Здравствуйте! Пытаюсь перезаписать файл, но в результате файл пустой. Как я могу это исправить?

Код моей программы:
using Excel = Microsoft.Office.Interop.Excel;

namespace ConsoleApp2
{
    internal class Program
    {
        public static Excel.Application Application1;
        public static Excel.Workbook WorkBook1;
        public static Excel.Worksheet WorkSheet1;
        public static Excel.Range Range1;

        private static void OpenExcelFile()
        {
            Application1 = new Excel.Application();
            WorkBook1 = Application1.Workbooks.Open("C:\\Users\\artem\\OneDrive\\Рабочий стол\\Test\\TestFile.xlsx");
            WorkSheet1 = WorkBook1.Worksheets[1];
        }
        static void Main(string[] args)
        {
            OpenExcelFile();
            WorkSheet1.Cells[1, 1].Value = "Имя: ";
            WorkBook1.Save();
            WorkBook1.Close();
            Application1.Quit();
        }
    }
}
  • Вопрос задан
  • 125 просмотров
Подписаться 1 Простой 2 комментария
Решения вопроса 1
@rPman
Очень странно, код у автора выглядит верным.
Точно никаких ошибок выполнения не происходит? Оберни весь код в try catch и выводи exception
у меня есть смутные подозрения - русские имена в пути и наличие в них onedrive, так как включенное облачное хранилище может делать с файлами в каталоге свою магию. Проверь работу с файлом в другом месте

Одно время активно пользовался именно этим способом, потому что нужно было автоматизировать работу с чужими документами с формулами, и за адекватное время и усилия делать все можно было только средствами офиса, и именно так все делали из c# (vbs никто не любил хотя благодаря автозаписи макросов, написание кода часто было еще проще).
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы