Forum: Ruby Tables word problem in Ruby

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Hai anh L. (Guest)
on 2008-12-13 04:54
My problem is about table in Word. With Ruby I can access, modify, save
as... word document to txt document. But I don't find the code to work
with tables. I see that every tables is destroyed its format if I save
as word format-> txt format. Have anybody know about the issue ? I only
want the code detect tables and maintain it. If unfortunately, we have
no way maintain, we can remove all tables  from txt document (because
it's not necessary)
David M. (Guest)
on 2008-12-13 15:52
Hai anh Le wrote:
> My problem is about table in Word. With Ruby I can access, modify, save
> as... word document to txt document. But I don't find the code to work
> with tables. I see that every tables is destroyed its format if I save
> as word format-> txt format. Have anybody know about the issue ? I only
> want the code detect tables and maintain it. If unfortunately, we have
> no way maintain, we can remove all tables  from txt document (because
> it's not necessary)

My first thought is that you could convert your tables to tab-delimited
text prior to saving the document. This can be done by calling the
ConvertToText method on each table, passing it a value of 1
(wdSeparateByTabs):

Where doc is your Word document object:

  for table in doc.Content.Tables
      table.ConvertToText(1)
  end

Does that help?

David

http://rubyonwindows.blogspot.com
http://rubyonwindows.blogspot.com/search/label/word
Hai anh L. (Guest)
on 2008-12-15 05:53
Hi David

Thank very much for your help. I test both VBA code in word document and
Ruby code. The result is very good :)

I have small query. I want to read word document, convert it to plain
text and display in website, then find some word follow special
requirement (don't find in tables). So I have idea that I will convert
word document to plain text; mark begin, end point of tables by some
special symbol. It help me to recognize and don't search in table area.
Your blog is very useful. I have found many information in the past. I
find the code to add some characters into word document but I can't
search more information in order to working with tables. Do you know
about the way to recognize begin and end of tables?

I want to display table with border(e.g. box border). And are you have
any way to do it?

Hai Anh

Ps : Can I contact with you by email?

David M. wrote:
> My first thought is that you could convert your tables to tab-delimited
> text prior to saving the document. This can be done by calling the
> ConvertToText method on each table, passing it a value of 1
> (wdSeparateByTabs):
>
> Where doc is your Word document object:
>
>   for table in doc.Content.Tables
>       table.ConvertToText(1)
>   end
>
> Does that help?
>
> David
>
> http://rubyonwindows.blogspot.com
> http://rubyonwindows.blogspot.com/search/label/word
Hai anh L. (Guest)
on 2008-12-16 04:28
Anyone?
This topic is locked and can not be replied to.