Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Программирование, связанное с 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, закрывать не буду, но решённой помечу...![]() |