C # word api добавить строку в таблицу, используя целевое форматирование - PullRequest
0 голосов
/ 25 июня 2019

Я нашел несколько сообщений о сохранении форматирования, но, похоже, ни одна из них не решила мою проблему.

У меня есть закладки в исходной таблице (исходный документ), которые я хочу добавить в таблицу назначения (конечный документ).

Однако в документе назначения используются разные шрифты.

Всякий раз, когда я добавляю строки, форматирование копируется из исходного документа, однако я хочу, чтобы форматирование совпадало с форматом целевого документа.

Я пробовал следующие методы вставки;

wordapp.Selection.PasteAndFormat(wdRecoveryType.wdFormatPlain);
wordapp.Selection.PasteAndFormat(wdRecoveryType.wdFormatOriginalFormatting);
wordapp.Selection.PasteAndFormat(wdRecoveryType.wdTableAppendTable);
wordapp.Selection.PasteAndFormat(wdRecoveryType.wdInsertAsRows);
wordapp.Selection.PasteAndFormat(wdRecoveryType.wdTableOriginalFormatting);
wordapp.Selection.PasteAndFormat(wdRecoveryType.wdTableOverwriteCells);
wordapp.Selection.PasteAndFormat(wdRecoveryType.wdUseDestinationSytlesRecovery);

Однако все (кроме обычного текста) используют исходное форматирование.

Однако простой текст не может скопировать все содержимое ячейки, когда текст переносится в ячейку.

Дополнительная информация. Таблица назначения представляет собой таблицу из 2 столбцов. Исходная таблица представляет собой таблицу из 3 столбцов, в которой только первые два столбца любой строки имеют закладки. Это когда возникает проблема форматирования.

Если я заменю исходную таблицу другой таблицей из 2 столбцов, поведение вставки полностью изменится, и независимо от исходных форматов, я могу заставить вставку использовать формат назначения, используя:

wordapp.Selection.PasteAppendTable();

Но только если количество столбцов в двух таблицах совпадает!

Так что же мне остается попробовать ???

...