using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using Excel = Microsoft.Office.Interop.Excel;
namespace GridComplete
{
public partial class Form1 : Form
{
private static Excel.Workbook MyBook;
private static Excel.Application MyApp;
private static Excel.Worksheet MySheet;
private void bRun_Click(object sender, EventArgs e)
{
MyApp = new Excel.Application();
MyApp.Visible = false;
MyBook = MyApp.Workbooks.Open(tbFile1);
MySheet = (Excel.Worksheet)MyBook.Sheets[1];
}
}
}
В строке, которая устанавливает MyApp.Visible в false, я получаю следующее необработанное исключение:
Необработанное исключение типа "System.InvalidCastException" произошло в файле GridComplete.exe
Дополнительная информация: Невозможно передать COM-объект типа "Microsoft.Office.Interop.Excel.ApplicationClass" в тип интерфейса "Microsoft.Office.Interop.Excel._Application". Эта операция завершилась неудачно, потому что вызов QueryInterface на COM-компоненте для интерфейса с IID '{000208D5-0000-0000-C000-000000000046} не удался из-за следующей ошибки: библиотека не зарегистрирована. (Исключение из HRESULT: 0x8002801D (TYPE_E_LIBNOTREGISTERED)).
** Кажется, я не понимаю, что происходит. Я попытался удалить ключи из реестра и повторно запустить. Это не сработало. Я также полностью удалил Microsoft Office, а затем переустановил. Я не уверен, что еще нужно сделать, чтобы исправить эту проблему.
Возможно, у вас нет установленной версии Microsoft Excel, установленной на компьютере, где вы используете этот код. Или это установка сломана. Попробуйте переустановить Office