incubator-ooo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From zhangjf <zhan...@apache.org>
Subject Re: [DISCUSS]Macros are lost after saving the xls file to ods, then save as to xls again
Date Thu, 05 Jul 2012 16:34:51 GMT
On Tue, Jul 3, 2012 at 10:22 PM, Lei Wang <lei.wang.leiw@gmail.com> wrote:
> As I know, VBA code can be related with specific sheet. When end user open
> the ods file and remove this sheet, then save it as xls file.  According to
> your solution, all VBA codes will be restored in xls file. Is this xls file
> valid?
>

> Another concern is does your solution conform to ODF1.2 standard?
>

Just some thoughts.

About the ODF standard compliance, I think it depends on where this
piece of data is saved. odf supports to add user defined property or
customer meta data http://s.apache.org/CA0. Also you can refer to the
XDocumentProperties uno interface at http://s.apache.org/sW for the
API to get/set user defined properties, it even supports to add extra
data to odf package. In this way I don't think it breaks the ODF
standard. Then only interesting consumers read this piece of data,
others can safely ignore them.

Of course, these document seems a kind of odf extended documents.

Regards,
Zhangjf

> On Tue, Jul 3, 2012 at 6:32 PM, chengjh <chengjh@apache.org> wrote:
>
>> That doesn't matter that you think they are VBA or Star Basic when saving a
>> xls with VBA as ods file..To some APIs with behavior difference,they will
>> be distinguished with the line "Option VBASupport 1" at the beginning..End
>> users can modify the Star Basic codes in AOO Spreadsheet,but all Star Basic
>> contents including original and modified will be lost when exporting to xls
>> file..Here,if the ods file is converted from a xls file based on Peng's
>> solution,the behavior is still kept unchanged...The only difference is that
>> the saved binary VBA streams within the ods file will be exported to the
>> xls file at that time.Thus,when end users launch the xls file in MS
>> Excel,the original VBA will be there.That's the expected result.thanks.
>>
>> On Tue, Jul 3, 2012 at 5:02 PM, Lei Wang <lei.wang.leiw@gmail.com> wrote:
>>
>> > Jian Hong,
>> >
>> > Will AOO save VBA as Star Basic in ods file when saving a xls file with
>> VBA
>> > as ods file? If it is true, can user modify the Star Basic in the new ods
>> > file? What happened if user change the Star Basic in the ods file then
>> save
>> > as a xls file?
>> >
>> > On Tue, Jul 3, 2012 at 3:57 PM, chengjh <chengjh@apache.org> wrote:
>> >
>> > > Hi Peng,
>> > >
>> > > Let me use a scenario to confirm your problem,solution and
>> > > question..Anything misunderstood,please correct me.thanks.
>> > >
>> > > Problem:
>> > > When AOO launches an excel document with VBA,saves to ods and then
>> saves
>> > to
>> > > excel again,the VBA info will be lost.
>> > >
>> > > Solution:
>> > > a)The VBA streams of an excel document will be saved into the ods
>> > document
>> > > with binary format when converting an excel document to an ods document
>> > in
>> > > AOO Spreadsheet with certain controller.
>> > > b)Once the ods document containing the binary VBA streams is launched
>> > into
>> > > AOO or previous releases,with certain controller,the binary VBA steams
>> > will
>> > > be loaded[still binary stream in memory] or rejected..There is no any
>> > > impact on the application,the application can still work well.
>> > > c)Based on b),if the ods document is saved to an excel document,the
>> > binary
>> > > VBA streams will be exported, thus, the VBA info will not be lost.
>> > >
>> > > Question:
>> > > You are not sure whether this solution is reasonable. So, you want to
>> > know
>> > > the comments about your solution. If no comments, you will do so to
>> > > implement it.
>> > >
>> > > On Mon, Jul 2, 2012 at 4:33 PM, Chen Peng <chenpeng2006@gmail.com>
>> > wrote:
>> > >
>> > > > Hi All,
>> > > >       My name is Chen Peng, I am a developer from Symphony. My
>> special
>> > > > areas are VBA and sw.
>> > > >       Now I found an issue about macros lost:
>> > > >          I saved an excel file with VBA to spreadsheet, the VBA can
>> > work
>> > > > well in spreadsheet, then I wanted to save this spreadsheet back to
>> > > excel,
>> > > > but all the macros are lost.
>> > > >       I propose to save the binary data of excel VBA to spreadsheet,
>> > when
>> > > > saving excel to spreadsheet, then we can get the binary data from
>> > > > spreadsheet if need to save the spreadsheet to excel again.
>> > > >       The binary data will not impact the open/save... of the ODF
>> > format
>> > > > application, it will not be touched when we operate the ODF formant
>> > > > applications. The binary data will be just used when we want to save
>> > the
>> > > > spreadsheet to excel, it is just a data prestore about saving
>> > spreadsheet
>> > > > macros to excel.
>> > > >        Can you give some advice about the solution?
>> > > >        Any feedback will be preciated, thanks.
>> > > >
>> > >
>> > >
>> > >
>> > > --
>> > >
>> > > Best Regards,Jianhong Cheng
>> > >
>> >
>>
>>
>>
>> --
>>
>> Best Regards,Jianhong Cheng
>>

Mime
View raw message