Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Kaskad Автор Сообщений: 214 Откуда: Новосибирск Дата регистрации: 24.10.2007 |
Пожалуйста, помогите! Не понимаю, почему в коде
NumStr = 99 CntClmns = 77 m.loExcel.range(m.loExcel.Cells(NumStr,1),m.loExcel.Cells(NumStr, CntClmns)).copy NumStr = NumStr + 1 m.loExcel.range(m.loExcel.Cells(NumStr,1), m.loExcel.Cells(NumStr, ColnmCnt)).Pastespecial(xlPasteFormats), где xlPasteFormats = -4122 не вставляется формат - объединение, выравнивание... Что я не так делаю? |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
of63 Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Если в экселе, в окне Immediate (Alt-F11) руками проделать тоже самое, то "вставляется" ?
Если да, то попробуй опять из фокса, но в режиме видимости экселя. Бывает, что в режиме невидимого экселя работает немного по-другому. Также можно ли обойтись без .Copy - .Pastespecial, прямым присваиванием (может, без .Range) ? |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
ry Сообщений: 2113 Дата регистрации: 24.09.2007 |
CntClmns и ColnmCnt - это просто здесь опечатка или в коде так и есть?
|
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Kaskad Автор Сообщений: 214 Откуда: Новосибирск Дата регистрации: 24.10.2007 |
Надеюсь, что опечатка, счас посмотрю. Просто Copy отстоит от Paste команд так на пару-тройку сотен
А сам принцип взят, конечно, из макроса на Excel. Потому и непонятно, почему там работает, а в VFP нет. Исправлено 3 раз(а). Последнее : Kaskad, 08.07.20 11:53 |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Чем не устраивает
Цитата:Это очень, очень печально. Код-лапша никогда ни к чему хорошему не приводил. Очень советую структурировать, оформить служебные процедуры или методы классов и никогда не писать портянки кода (один метод/процедура) на 300 строк, не говоря уж о больших (подозреваю что тут как раз этих строк много больше). ------------------ WBR, Igor Исправлено 1 раз(а). Последнее : Igor Korolyov, 09.07.20 22:49 |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Kaskad Автор Сообщений: 214 Откуда: Новосибирск Дата регистрации: 24.10.2007 |
1. Не знаю, что такое - где посмотреть? 2. не мной написано изначально, переделывать приходится |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
of63 Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Смотреть как обычно, в интернетах. Про .Copy смотреть особо нечего. Игорь намекает, что командой .Copy можно копировать Range-->Range, за один раз, не разрывая на фазы скопировал-положил. Пробовать можно в фоксе, а можно и в окне Immediate Excel-я (Alt-F11).
А, да. В кнопке F1 в экселе нормальный хелп по командам типа Copy ...нажал в своем экселе-2007, а хелпа-то и нет устарел ваш экседь пишет, купи новый... А я еще этот не износил, я им практически не пользовался. Исправлено 3 раз(а). Последнее : of63, 10.07.20 07:50 |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Kaskad Автор Сообщений: 214 Откуда: Новосибирск Дата регистрации: 24.10.2007 |
Добрый день!
Пробовала и Range-->Range, и строку в строку - PasteSpecial не работает, хоть тресни. Работает только вставка этой строки - дольше, но хотя бы работает. Будет время, снова попробую разобраться. Хотя когда оно будет...? |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
С таким когда-то сталкивался. Не помню подробностей. Но вроде тоже что-то с командой вставки было, есть какие-то нюансы ее использования не из макроса. Кстати, стоило бы в коде сделать всюду объектные скобки WITH...ENDWITH - хотя бы просто для удобочитаемости. Чтобы как говорится глаза понапрасну не разбегались. Вот так вот к примеру лучше же воспринимается приведенный в начале кусок:
------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) Исправлено 1 раз(а). Последнее : Crispy, 10.07.20 10:12 |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
У меня пример из кода - всё работает. Он как раз "размножает" шаблонные строки перед заполнением их очередной порцией данных.
Там разные диапазоны. Смысла вставлять данные в то же самое место откуда только что их скопировал - чуть. Да и код размазанный на 300+ строк никакие With не спасут - только ещё больше запутают. И как раз таки работа через буфер обмена является менее надёжной, чем работа "прямыми" методами. Буфер обмена это общесистемная штука - мало ли кто вмешается в процесс пока ты что-то копипастишь. А в МС офисе ещё и расширенная "многокарманностью" - в зависимости от настроек эксель может сохранять до 24 последовательных Copy чтобы потом по очереди (или в произвольном порядке) их Paste. ------------------ WBR, Igor Исправлено 1 раз(а). Последнее : Igor Korolyov, 10.07.20 19:29 |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
alex; Сообщений: 2850 Откуда: Москва Дата регистрации: 23.11.2004 |
таки, использование буфера офиса с многокарманностью ненадежно? |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Использование любого глобального объекта, в который в любой момент времени могут влезть и изменить содержимое абы кто (как ПО так и банально юзер своими ручками) - по определению ненадёжно.
------------------ WBR, Igor |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
alex; Сообщений: 2850 Откуда: Москва Дата регистрации: 23.11.2004 |
Может мы просто не умеем его "готовить"? Если Application.Visible = false, то пользователя мы уже исключили. |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
of63 Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Не. Когда прога гоняет невиидимый эксель, а ты параллельно руками запускаешь видимый эксель, то эти оба экселя чуствуют друг друга заразы, и Ctrl-C в видимом экселе нарушает запомненное в .Copy невидимого. Выключателя этой связи что-то не видел...
Исправлено 1 раз(а). Последнее : of63, 11.07.20 10:01 |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
alex; Сообщений: 2850 Откуда: Москва Дата регистрации: 23.11.2004 |
Если честно, я на стороне Игоря, но мало ли, я всегда боюсь когда уверен на 110%. Таки если ошибочное мнение станет наоборот тру, то пруф )) |
Re: Не работает под VFP копирование строки с форматированием в Excel-таблице | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
С буфером обмена ещё веселее - он не только от 2-го экселя зависит, он от ВСЕГО зависит - от блокнота до автокада или того же браузера Запустил формирование отчётика, а пока он готовится, решил подружке весёлую ссылочку в скайпе послать - и потом "высокое начальство" до-о-о-лго смеяться будет над бедолагой - хотя на самом деле это просто разработчик ------------------ WBR, Igor |
© 2000-2024 Fox Club  |