Как найти «заменить текст при вводе» в Word автозамены в Word с C# - PullRequest
0 голосов
/ 26 января 2020

Я пытаюсь проверить, существует ли слово «CU» в «текстовом списке замены слов». Я обнаружил в interop.Excel и в VBA, у нас есть AutoCorrect.ReplacementList. Но во взаимодействии. Слова нет.

Итак, мой вопрос: как я могу проверить, существует ли «CU» в списке замены Word по C#. Спасибо за просмотр enter image description here

Microsoft.Office.Interop.Word.Application oWord = (Microsoft.Office.Interop.Word.Application)w;
_activeDoc = oWord.ActiveDocument;
oWord.Application.AutoCorrect.ReplaceText .......??????

1 Ответ

1 голос
/ 26 января 2020

Чтобы получить список из списка автозамены в Word, используйте коллекцию AutoCorrect.Entries. Свойство Name возвращает «ярлык», свойство Value - текст, который заменяет «ярлык».

string acName = "";
string acValue = "";
bool foundit = false;
Word.AutoCorrectEntries ACs = wdApp.AutoCorrect.Entries;
foreach (Word.AutoCorrectEntry AC in ACs)
{
    acName = AC.Name;
    acValue = AC.Value;
    Debug.Print("Name: {0}, Value: {1}", acName, acValue);
    if (acName == "CU")
    {
        foundit = true;
        break;
    }
}
if (foundit)
{
    MessageBox.Show("Found it: " + acValue);
}
else MessageBox.Show("Not present");
...