| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программирование, связанное с MS Office > Копирование областей в Excel |
| Автор: EKoshelev 21.3.2007, 11:45 |
| Пишу прогу в Delphi. Интегрируюсь с ёкселем при помощи стандартных средств. Специфика в том, что копирование там организовано примерно так: Range['A1', 'B2'].Copy(чё-то там); То есть более или менее нормально. А вставка возможна только при помощи PasteSpecial, а просто Paste почему-то нет. Range['A1', 'A1'].PasteSpecial(Чё-то там); Дак вот. Когда копирую в рамках одного листа, то всё нормально. А когда из одной книги в другую, то вставляется какой-то инородный кусок эеселя. Т. е. если на него ткнуть два раза, то можно редактировать и т. п. Короче, мне надо чтобы копировалось по человечески. Может можно как-нибудь это сделать при помощи PasteSpecial? |
| Автор: Genyaa 21.3.2007, 13:40 |
| В Excel "нормальное" копирование делается с помощью того же Copy. В параметрах нужно только указать параметр Destination: Range(копируемый).Copy Destination:=WorkBooks(какая нужно).Worksheets(какой нужно).Range(куда именно) и должно получиться. А PasteSpecial - он нужен тоже, но для специальных случаев. |
| Автор: EKoshelev 22.3.2007, 09:21 |
| Genyaa, спасибо за подсказку. Я уже именно так и сделал. Надо признать, что я тему немного не правильно сформулировал. Копирование было глючным при копировании не между книгами, а между процессам. Короче, я свои проблемы решил. Тему наверное закрыть можно... |
| Автор: mihanik 25.3.2007, 09:33 |
| EKoshelev, закрывать не буду, но решённой помечу... |