Ошибка добавления ссылки на библиотеку Office: тип или имя пространства имен Слово не найдено - PullRequest
3 голосов
/ 31 мая 2010

Я пытаюсь использовать образец кода здесь :

Я пошел в диалоговое окно «Добавить ссылку» и добавил «Библиотеку Microsoft Word 12», но она не отображается в обозревателе решений. Я также добавил: using Microsoft.Office;

При попытке объявить объект «Word» я получаю следующее сообщение об ошибке.

Ошибка 1: не удалось найти тип или имя пространства имен «Word» (отсутствует директива using или ссылка на сборку?)

Любые предложения о том, как правильно ссылаться на библиотеку Word?

Ответы [ 7 ]

3 голосов
/ 31 мая 2010

Редактировать: изменено, чтобы не использовать буфер обмена

using Microsoft.Office.Interop.Word;

public string Test(string path)
{
    Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application();
    object file = path;
    object nullobj = System.Reflection.Missing.Value;

    Document doc = wordApp.Documents.Open(ref file, ref nullobj, ref nullobj,
                                           ref nullobj, ref nullobj, ref nullobj,
                                           ref nullobj, ref nullobj, ref nullobj,
                                           ref nullobj, ref nullobj, ref nullobj);

    string result = doc.Content.Text.Trim();
    doc.Close();
    return result;
}
1 голос
/ 25 июля 2012

Я добавил ссылку на библиотеку объектов Microsoft Word, а также написал using Microsoft.Office.Interop.Word; вверху. Но код не работал. Я работал с кодом, указанным в этой ссылке: http://support.microsoft.com/kb/316384

Затем я изменил все «Word» на «Microsoft.Office.Interop.Word» внутри кода, и это сработало.

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

Вам следует использовать сборку и директиву Microsoft.Office.Interop.Word
using Microsoft.Office.Interop.Word;

0 голосов
/ 16 декабря 2016

используйте это

using Excel = Microsoft.Office.Interop.Excel;

вместо

using Microsoft.Office.Interop.Word; 
0 голосов
/ 31 января 2014
  1. Убедитесь, что вы добавили ссылку на Microsoft.Office.Interop.Word. Чтобы добавить ссылку, щелкните правой кнопкой мыши ссылку, выберите «добавить ссылку», а затем найдите файл Microsoft.Office.Interop.Word на вкладке «.NET»

  2. В файл вашей программы вставьте:

    с использованием Word = Microsoft.Office.Interop.Word;

    Обратите внимание на "Слово =", это секрет решения вашей боли. У вас должен быть установлен Word, кстати.

    Вот как я к этому подхожу, когда не уверен, что у пользователя установлен Word: .

// 1. Этот код создает приложение word, первый ТРЕБУЕМЫЙ шаг в манипулировании файлом Word

Word.ApplicationClass wordApplication;
try { wordApplication = new Word.ApplicationClass(); }
catch (Exception e) { MessageBox.Show("ERROR! Do you have MS Word installed? " + e.Message.ToString()); }

Источник

0 голосов
/ 31 мая 2010

Используемая вами техника требует, чтобы у вас была определенная версия Word, установленная на вашем компьютере разработчика и на всех машинах, на которые вы нацелены для развертывания.

Начиная с Office 2007, документы Office хранятся в форматах Open XML. Эти документы могут быть прочитаны и изменены с помощью API упаковки и XML в .NET Framework. Вы также можете использовать Open XML SDK, чтобы предоставить вам более высокий уровень абстракции поверх API упаковки и XML. При использовании этого метода Word не установлен для разработки или использования в промышленности.

Дополнительную информацию о работе с Open XML можно найти по ссылкам ниже:

Разработчик Open XML

Open XML SDK 2.0 для Microsoft Office

0 голосов
/ 31 мая 2010

какая версия офиса у вас установлена? Я думаю, это другой. Вы можете увидеть соответствие официальных имен версиям здесь: http://en.wikipedia.org/wiki/Microsoft_Word#Versions

...