| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программирование, связанное с MS Office > Вставить из ClipBoard в Word-таблицу |
| Автор: swetik1981 9.12.2012, 23:48 |
| Имеется заранее созданная таблица в документе Word, с отформатированными нужным образом стобцами, подобранными размерами, типами и цветом шрифтов в каждои из столбцов и т.д. Из таблицы другого приложения (скажем, MSFlexGrid или Datagrid) периодически копируются изменяемые табличные данные и вставляются в эту вордовскую таблицу. Но при этом в таблице меняется форматирование, то есть ранее выставленные форматы текста теряются. Есть ли возможность вставить таблицу из буфера в заготовленную таблицу Word так, чтобы вставляемые данные (текст) приняли форматирование то, которые до этого были в соответствующих ячейках таблицы? |
| Автор: skyboy 10.12.2012, 00:18 |
| в буфер обмена копируемое попадает в нескольких форматах — в случае с таблицами это, как минимум, "только текст", "HTML" и что-то еще. советую начать с выяснения, в каких форматах копирует данные в буфер эта твоя сторонняя программа. потом может оказаться, что удалить все форматы кроме HTML(чтоб форсировать именно его использование Экселем) будет рациональнее. это предположение |
| Автор: swetik1981 10.12.2012, 06:47 | ||
В том-то и дело, что из любой сетки данные копируются в виде разделённого специальными разделителями текста, не имея при этом никакого форматирования; а вордовскую таблицу вставляются данные с формативрованием "по умолчанию", т.е. не тем, которое существует в таблице, а тем, которое в ней существовало сразу после создания новой таблицы до применения мною к ней форматирования. Как это обойти? |
| Автор: Akina 10.12.2012, 08:36 |
| Сливать данные из клипборда в программный буфер, там парсить и раскладывать по местам. Либо наоборот - после вставки данных проходить по ячейкам таблицы и применять к ним заранее созданные стили. |