[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Float in Spreadsheet

Jim Burgess

2/10/2009 4:15:00 PM

Hi,
I am using the ruby spreadsheet gem to create Excel files from within
Ruby.
Could someone tell me how to write a decimal value (in this case 34.00)
to an Excel cell.
I have looked in the documentation (http://spreadsheet.ruby...)
and found the method write_number.
I guess this will do what i want, but I cannot for the life of me get it
to work.
Thanks for any help.
--
Posted via http://www.ruby-....

15 Answers

Jim Burgess

2/12/2009 8:06:00 AM

0

Can no one help me?
Could someone at least tell me if there is a place (forum or mailing
list or whatever) where I can ask for help.
Thanks.
--
Posted via http://www.ruby-....

Jayce Meade

2/12/2009 8:10:00 AM

0

Sometimes some things don't get responses, I guess. Sorry. D:

What's your problem?

--------------------------------------------------
From: "Jim Burgess" <igsnhelp@rub.de>
Sent: Thursday, February 12, 2009 12:06 AM
Newsgroups: comp.lang.ruby
To: "ruby-talk ML" <ruby-talk@ruby-lang.org>
Subject: Re: Float in Spreadsheet

> Can no one help me?
> Could someone at least tell me if there is a place (forum or mailing
> list or whatever) where I can ask for help.
> Thanks.
> --
> Posted via http://www.ruby-....
>
>

Jim Burgess

2/12/2009 8:27:00 AM

0

> Sometimes some things don't get responses, I guess. Sorry. D:
No worries, it's just that spent ages writing this app and everything
works fine except this one thing, so it would be a shame if I couldn't
sort it out.

All I want to do is write a decimal to a cell in a spreadsheet generated
using the ruby spreadsheet gem.

Currently I'm writing:
@invoice.row(32+i).push '',i, groups[i-1],'',groups_ue[i-1], 34, tot

Instead of 34 I want to write 34.00
However when I write:
@invoice.row(32+i).push '',i, groups[i-1],'',groups_ue[i-1], 34.00, tot

The program still writes 34 (without the decimal) to the cell.

Cheers for your help.

--
Posted via http://www.ruby-....

Victor H. Goff III

2/12/2009 8:40:00 AM

0

[Note: parts of this message were removed to make it a legal post.]

This looks like a formatting problem. I don't have an answer for you, but
if the format for that cell has no trailing zeros, then this would be the
affect you are seeing.
I hope it helps... Sorry, I have not confirmed this.

Warmest Regards,

Victor H. Goff III

Lars Christensen

2/12/2009 8:40:00 AM

0

On Feb 12, 9:26 am, Jim Burgess <igsnh...@rub.de> wrote:
> The program still writes 34 (without the decimal) to the cell.

Excel treats 34 and 34.00 as the same number (and Ruby treat 34.0 and
34.00 the same).

fmt = Spreadsheet::Format.new(:number_format => '0.00')
sheet1.row(1).set_format(1,fmt)


Hannes Wyss

2/12/2009 8:47:00 AM

0

Jim, Victor,

On Thu, Feb 12, 2009 at 9:39 AM, Victor H. Goff III
<keeperotphones@gmail.com> wrote:
> This looks like a formatting problem. I don't have an answer for you, but
> if the format for that cell has no trailing zeros, then this would be the
> affect you are seeing.

That's exactly right. Add a Format:

fmt = Spreadsheet::Format.new :number_format => '0.0'
row = @invoice.row(32+i)
row.push '',i, groups[i-1],'',groups_ue[i-1], 34.00, tot
row.set_format 5, fmt

(There is also a Column Default-Format, but that seems not to work atm
- will fix asap.)

hth
Hannes

Jim Burgess

2/12/2009 10:00:00 AM

0

Thanks ever so much for the replies.
The formatting now works perfectly.
I guess that the moral of the story is that Thursday morning is a good
time to post questions :-)
Thanks again.
Jim

--
Posted via http://www.ruby-....

Rick DeNatale

2/12/2009 12:47:00 PM

0

[Note: parts of this message were removed to make it a legal post.]

On Thu, Feb 12, 2009 at 5:00 AM, Jim Burgess <igsnhelp@rub.de> wrote:

>
> I guess that the moral of the story is that Thursday morning is a good
> time to post questions :-)
>

Might I suggest is that the real moral is that the community is much more
able, and therefore willing, to answer questions which provide enough
context, like what you've tried and wnat's not working, than just something
like "I read the documentation and I can't get it to work."

http://catb.org/~esr/faqs/smart-questions.html...

---
Rick DeNatale

Blog: http://talklikeaduck.denh...
Twitter: http://twitter.com/Ri...

Jim Burgess

2/12/2009 12:54:00 PM

0

> Might I suggest is that the real moral is that the community is much
> more
> able, and therefore willing, to answer questions which provide enough
> context, like what you've tried and wnat's not working, than just
> something
> like "I read the documentation and I can't get it to work."

Uh, get off your moral high horse Rick.
I can never understand people who make posts like this.
I tried for ages to get this to work, read the documentation, surfed the
net looking for solutions and essentially drew a blank before posting
here.
Maybe my initial question wasn't precise enough for you, but apart from
that I don't see what more I could have done.

--
Posted via http://www.ruby-....

Rick DeNatale

2/12/2009 3:29:00 PM

0

[Note: parts of this message were removed to make it a legal post.]

On Thu, Feb 12, 2009 at 7:53 AM, Jim Burgess <igsnhelp@rub.de> wrote:

> > Might I suggest is that the real moral is that the community is much
> > more
> > able, and therefore willing, to answer questions which provide enough
> > context, like what you've tried and wnat's not working, than just
> > something
> > like "I read the documentation and I can't get it to work."
>
> Uh, get off your moral high horse Rick.
> I can never understand people who make posts like this.
> I tried for ages to get this to work, read the documentation, surfed the
> net looking for solutions and essentially drew a blank before posting
> here.
> Maybe my initial question wasn't precise enough for you, but apart from
> that I don't see what more I could have done.
>

All I'm suggesting is that I see lots of questions like your initial post
which don't get replies because there's not enough information to even guess
what's wrong. Not just here but all over the internet.

It was only after your third post in which you actually showed some code,
that you got some help.

If you'd done that little bit more initially, you might have gotten your
answer right away.

None of us who try to help here get paid for it as far as I know.

If you want to take a suggestion as to how to get better results in the
future as a personal affront, it's no skin off my nose.

--
Rick DeNatale

Blog: http://talklikeaduck.denh...
Twitter: http://twitter.com/Ri...