<div dir="ltr"><div>А зачем же писать новую книгу?<br></div>Скопируйте файл и в нем меняйте ячейки. КМК именно это тут и имелось в виду.<br></div><div class="gmail_extra"><br><div class="gmail_quote">21 ноября 2014 г., 18:34 пользователь Natalya Savenkova <span dir="ltr"><<a href="mailto:name2rnd@gmail.com" target="_blank">name2rnd@gmail.com</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>Теряться его с того, что если использовать excel2003, то его надо парсить, а потом писать заново в другую книгу.</div><div>Если смержены ячейки 1,2,3 то получите контент для ячейки 1, а 2 и 3 будут считаться пустыми. Возвращает ли парсер признак для этих ячеек, что они смержены? Не уверена.<br><br>Savenkova Natalya<div><a href="mailto:name2rnd@gmail.com" target="_blank">name2rnd@gmail.com</a></div><div><a href="http://facebook.com/name.rnd" target="_blank">http://facebook.com/name.rnd</a></div></div><div><br>On 21 нояб. 2014 г., at 18:00, Алексей Мышкин <<a href="mailto:parserpro@gmail.com" target="_blank">parserpro@gmail.com</a>> wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr">А с чего бы мерджу теряться? Вы же меняете только value, все остальное остается.<br></div><div class="gmail_extra"><br><div class="gmail_quote">21 ноября 2014 г., 17:58 пользователь Natalya Savenkova <span dir="ltr"><<a href="mailto:name2rnd@gmail.com" target="_blank">name2rnd@gmail.com</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>Вот как раз аналогичный способ, но только Excel-2007, который xlsx<br></div>В принципе, там можно каким-нибудь утвержденным способом вставлять данные в ячейки, ну типа $ID$, потом регулярками заменять их на нужный контент.<br></div>Мы такую штуку в RTF проделывали, не думаю, что будет сложно в реализации.<br>Excel::Template - точно не умеет мержить, я по этому поводу общалась с разрабом этого модуля, сказал "что не планировал делать и если мне так хочется.. я могу сделать это сама" =)<br><br></div>С кодами для замены можно и с обычным экселем провернуть тему, но явно сложнее. По идее, сначала надо документ распарсить, выбрать контент ячеек, который под замену, и записывать в такой же последовательности. Но мерж ячеек, я уверена, будет потерян.<br><br></div><div class="gmail_extra"><br><div class="gmail_quote">21 ноября 2014 г., 17:49 пользователь Alexander Lourier <span dir="ltr"><<a href="mailto:aml@rulezz.ru" target="_blank">aml@rulezz.ru</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Сохранял в формате OpenOffice (это zipped XML), затем XML парсился, программно достраивался, как нужно, сохранялся обратно в XML, зиповался, и передавался макросу в OpenOffice, чтобы пересохранить в другой формат (в моём случае это была печатная форма в PDF). Если устроит OpenOffice в качестве выходного формата, задача превращается в тривиальную.<div><div><br><br><div class="gmail_quote">On Fri Nov 21 2014 at 2:20:51 PM Василий Рябов <<a href="mailto:me@ryvasy.net" target="_blank">me@ryvasy.net</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Всем привет<br>
<br>
Есть задача генерить кучу отчетов в Excel по шаблонам, которые (в<br>
идеале) будут загружать менеджеры.<br>
<br>
Нашел Excel::Template, Spreadsheet::ParseExcel::<u></u>SaveParser<br>
<br>
Первый вариант требует шаблонов в XML, т.е., делать их придется всегда<br>
мне. Плюс я не нашел возможности объединять ячейки, а в примерах из ТЗ<br>
это нужно.<br>
<br>
Второй вообще строго говоря не работает с шаблонами и, если я правильно<br>
понял, не гарантирует сохранения всего, что могут в документ добавить<br>
(графики, формулы и т.п.)<br>
<br>
Кто-нибудь с такой задачей сталкивался? Как выкручивались?<br>
<br>
Спасибо!<br>
--<br>
Василий Рябов,<br>
<a href="mailto:me@ryvasy.net" target="_blank">me@ryvasy.net</a><span><font color="#888888"><br>
--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
</font></span></blockquote></div><span><font color="#888888">
</font></span></div></div><span><font color="#888888"><br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></font></span></blockquote></div><br></div>
<br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div><br><br clear="all"><span class="HOEnZb"><font color="#888888"><br>-- <br><div>С уважением,<br>Мышкин Алексей.</div>
</font></span></div><span class="HOEnZb"><font color="#888888">
</font></span></div></blockquote><span class="HOEnZb"><font color="#888888"><blockquote type="cite"><div><span>-- </span><br><span>Moscow.pm mailing list</span><br><span><a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a></span><br></div></blockquote></font></span></div><br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature">С уважением,<br>Мышкин Алексей.</div>
</div>