|
Вставить из ClipBoard в Word-таблицу
|
|||
---|---|---|---|
#18+
Имеется заранее созданная таблица в документе Word, с отформатированными нужным образом стобцами, подобранными размерами, типами и цветом шрифтов в каждои из столбцов и т.д. Из таблицы другого приложения (скажем, MSFlexGrid или Datagrid) периодически копируются изменяемые табличные данные и вставляются в эту вордовскую таблицу. Но при этом в таблице меняется форматирование, то есть ранее выставленные форматы текста теряются. Есть ли возможность вставить таблицу из буфера в заготовленную таблицу Word так, чтобы вставляемые данные (текст) приняли форматирование то, которые до этого были в соответствующих ячейках таблицы? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2012, 00:46 |
|
Вставить из ClipBoard в Word-таблицу
|
|||
---|---|---|---|
#18+
правка - специальная вставка - неформатированный текст ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2012, 01:39 |
|
Вставить из ClipBoard в Word-таблицу
|
|||
---|---|---|---|
#18+
Shocker.Proправка - специальная вставка - неформатированный текст В таком случае вставляемый текст приобретает форматирование не то, которое существует в таблице, а формативрование "по умолчанию". Это не подходит! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2012, 07:43 |
|
Вставить из ClipBoard в Word-таблицу
|
|||
---|---|---|---|
#18+
Интересный вопрос. Не совсем понятно, что вставляется? Будем считать что таблица в формате MS Word. Тогда только макросом, задействовав PasteAndFormat. В Word есть возможность вставки как в прилегающем формате, так и в формате оригинала. Для ячеек и таблиц это не работает, только если переносить текст каждой ячейки отдельно. Макрос вставки ячеек (подряд, от курсора) с сохранением оригинального формата: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53.
Думаю, общая идея понятна. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2012, 08:57 |
|
Вставить из ClipBoard в Word-таблицу
|
|||
---|---|---|---|
#18+
Сын вождя, Спасибо. Это работает, но очень медленно (в моём варианте необходимо копировать таблицы с сотнями и тысячи строк). Куда быстрее, но не настолько, чтоб меня устраивало, оставлять в таблице одну строку-образец, в которую вставляемые данные не копируются, а после осуществления вставки копировать формат с каждой ячейки этой строки на весь соответствующий ей столбец, а потом эту строку-образец удалять. Но на вид эта процедура просто ужасна и работает, как я говорил, не очень быстро. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2012, 23:46 |
|
Вставить из ClipBoard в Word-таблицу
|
|||
---|---|---|---|
#18+
Если всё-таки у кого-то появятся идеи, чуть проще объясню, что мне надо. 1. Вставляем в вордовский документ две таблицы, заполняем ячейки произвольными данными. 2. Форматируем столбцы таблиц по-разному (разные цвета, виды и размеры шрифта и т.д.). 3. Выделяем все или несколько ячеек первой таблицы, нажимаем "копировать". 4. Выделяем несколько ячеек второй таблицы. Выбираем Вставка-специальная вставка-неформатированный текст. 5. Текст вставляется, но не принимает те форматы, которые до этого были в соответствующих столбцах таблицы, а становится черным Times New Roman. Как с этим бороться??? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2012, 23:50 |
|
Вставить из ClipBoard в Word-таблицу
|
|||
---|---|---|---|
#18+
Zaharius...очень медленно... Если в таблице только текст, то макрос можно ускорить: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62.
Для больших таблиц, лучше подойдет вариант вставки с заменой и последующим форматированием. При форматировании больших таблиц Word тоже сильно тормозит, так что неизвестно, что будет быстрее. Немного ускоряет дело переключение в режим просмотра без разбивки на страницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2012, 00:32 |
|
|
start [/forum/topic.php?fid=61&msg=38071814&tid=2175159]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 317ms |
total: | 449ms |
0 / 0 |