writeexcel 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitattributes +1 -1
- data/.gitignore +24 -24
- data/README.rdoc +34 -55
- data/VERSION +1 -1
- data/charts/chartex.rb +316 -316
- data/charts/demo1.rb +46 -46
- data/charts/demo2.rb +65 -65
- data/charts/demo3.rb +117 -117
- data/charts/demo4.rb +119 -119
- data/charts/demo5.rb +48 -48
- data/examples/a_simple.rb +43 -43
- data/examples/autofilter.rb +265 -265
- data/examples/bigfile.rb +30 -30
- data/examples/chart_area.rb +121 -121
- data/examples/chart_bar.rb +120 -120
- data/examples/chart_column.rb +120 -120
- data/examples/chart_line.rb +120 -120
- data/examples/chart_pie.rb +108 -108
- data/examples/chart_scatter.rb +121 -121
- data/examples/chart_stock.rb +148 -148
- data/examples/chess.rb +142 -142
- data/examples/colors.rb +129 -129
- data/examples/comments1.rb +27 -27
- data/examples/comments2.rb +352 -352
- data/examples/copyformat.rb +52 -52
- data/examples/data_validate.rb +279 -279
- data/examples/date_time.rb +87 -87
- data/examples/defined_name.rb +32 -32
- data/examples/demo.rb +124 -124
- data/examples/diag_border.rb +36 -36
- data/examples/formats.rb +490 -490
- data/examples/formula_result.rb +30 -30
- data/examples/header.rb +137 -137
- data/examples/hide_sheet.rb +29 -29
- data/examples/hyperlink.rb +43 -43
- data/examples/images.rb +63 -63
- data/examples/indent.rb +31 -31
- data/examples/merge1.rb +40 -40
- data/examples/merge2.rb +45 -45
- data/examples/merge3.rb +66 -66
- data/examples/merge4.rb +83 -83
- data/examples/merge5.rb +80 -80
- data/examples/merge6.rb +67 -67
- data/examples/outline.rb +255 -255
- data/examples/outline_collapsed.rb +209 -209
- data/examples/panes.rb +113 -113
- data/examples/properties.rb +34 -34
- data/examples/properties_jp.rb +33 -33
- data/examples/protection.rb +47 -47
- data/examples/regions.rb +53 -53
- data/examples/repeat.rb +43 -43
- data/examples/right_to_left.rb +27 -27
- data/examples/row_wrap.rb +53 -53
- data/examples/stats.rb +74 -74
- data/examples/stocks.rb +81 -81
- data/examples/tab_colors.rb +31 -31
- data/examples/utf8.rb +15 -15
- data/examples/write_arrays.rb +83 -83
- data/lib/writeexcel/biffwriter.rb +232 -232
- data/lib/writeexcel/caller_info.rb +12 -12
- data/lib/writeexcel/chart.rb +2190 -2177
- data/lib/writeexcel/charts/area.rb +154 -154
- data/lib/writeexcel/charts/bar.rb +177 -177
- data/lib/writeexcel/charts/column.rb +156 -156
- data/lib/writeexcel/charts/external.rb +66 -66
- data/lib/writeexcel/charts/line.rb +154 -154
- data/lib/writeexcel/charts/pie.rb +169 -169
- data/lib/writeexcel/charts/scatter.rb +192 -192
- data/lib/writeexcel/charts/stock.rb +213 -213
- data/lib/writeexcel/colors.rb +64 -64
- data/lib/writeexcel/compatibility.rb +0 -255
- data/lib/writeexcel/debug_info.rb +37 -33
- data/lib/writeexcel/excelformulaparser.rb +587 -587
- data/lib/writeexcel/format.rb +13 -4
- data/lib/writeexcel/formula.rb +26 -9
- data/lib/writeexcel/helper.rb +68 -64
- data/lib/writeexcel/olewriter.rb +311 -311
- data/lib/writeexcel/properties.rb +242 -240
- data/lib/writeexcel/storage_lite.rb +984 -978
- data/lib/writeexcel/workbook.rb +3210 -3192
- data/lib/writeexcel/worksheet.rb +143 -51
- data/lib/writeexcel/write_file.rb +44 -40
- data/lib/writeexcel.rb +1159 -1159
- data/test/helper.rb +31 -28
- data/test/perl_output/README +31 -31
- data/test/test_00_IEEE_double.rb +13 -13
- data/test/test_01_add_worksheet.rb +10 -10
- data/test/test_02_merge_formats.rb +53 -53
- data/test/test_04_dimensions.rb +392 -392
- data/test/test_05_rows.rb +179 -179
- data/test/test_06_extsst.rb +77 -77
- data/test/test_11_date_time.rb +479 -479
- data/test/test_12_date_only.rb +501 -501
- data/test/test_13_date_seconds.rb +481 -481
- data/test/test_21_escher.rb +637 -637
- data/test/test_22_mso_drawing_group.rb +745 -745
- data/test/test_23_note.rb +73 -73
- data/test/test_24_txo.rb +75 -75
- data/test/test_25_position_object.rb +84 -84
- data/test/test_26_autofilter.rb +314 -314
- data/test/test_27_autofilter.rb +131 -131
- data/test/test_28_autofilter.rb +161 -161
- data/test/test_29_process_jpg.rb +683 -683
- data/test/test_30_validation_dval.rb +77 -77
- data/test/test_31_validation_dv_strings.rb +126 -126
- data/test/test_32_validation_dv_formula.rb +206 -206
- data/test/test_40_property_types.rb +188 -188
- data/test/test_41_properties.rb +235 -235
- data/test/test_42_set_properties.rb +437 -437
- data/test/test_50_name_stored.rb +299 -299
- data/test/test_51_name_print_area.rb +357 -357
- data/test/test_52_name_print_titles.rb +454 -454
- data/test/test_53_autofilter.rb +203 -203
- data/test/test_60_chart_generic.rb +578 -578
- data/test/test_61_chart_subclasses.rb +95 -95
- data/test/test_62_chart_formats.rb +272 -272
- data/test/test_63_chart_area_formats.rb +649 -649
- data/test/test_biff.rb +75 -75
- data/test/test_compatibility.rb +12 -627
- data/test/test_example_match.rb +3144 -3144
- data/test/test_formula.rb +61 -61
- data/test/test_ole.rb +106 -106
- data/test/test_storage_lite.rb +125 -125
- data/test/test_workbook.rb +139 -139
- data/test/test_worksheet.rb +110 -110
- data/utils/add_magic_comment.rb +80 -80
- data/writeexcel.gemspec +4 -6
- data/writeexcel.rdoc +58 -15
- metadata +9 -6
- data/test/test_new_encoding.rb +0 -205
data/charts/demo4.rb
CHANGED
@@ -1,119 +1,119 @@
|
|
1
|
-
#!/usr/bin/ruby -w
|
2
|
-
# -*- coding: utf-8 -*-
|
3
|
-
|
4
|
-
###############################################################################
|
5
|
-
#
|
6
|
-
# Simple example of how to add an externally created chart to a Spreadsheet::
|
7
|
-
# WriteExcel file.
|
8
|
-
#
|
9
|
-
#
|
10
|
-
# This example adds an "Open-high-low-close" stock chart extracted from the
|
11
|
-
# file Chart3.xls as follows:
|
12
|
-
#
|
13
|
-
# perl chartex.pl -c=demo4 Chart4.xls
|
14
|
-
#
|
15
|
-
#
|
16
|
-
# reverse('ゥ'), September 2004, John McNamara, jmcnamara@cpan.org
|
17
|
-
#
|
18
|
-
# original written in Perl by John McNamara
|
19
|
-
# converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
|
20
|
-
#
|
21
|
-
|
22
|
-
require 'writeexcel'
|
23
|
-
|
24
|
-
workbook = WriteExcel.new("demo4.xls")
|
25
|
-
worksheet = workbook.add_worksheet
|
26
|
-
|
27
|
-
# Add the chart extracted using the chartex utility
|
28
|
-
worksheet.embed_chart('G2', 'demo401.bin', 3, 3, 1.08, 1.21)
|
29
|
-
|
30
|
-
# Link the chart to the worksheet data using a dummy formula.
|
31
|
-
worksheet.store_formula('=Sheet1!A1')
|
32
|
-
|
33
|
-
|
34
|
-
# Add some extra formats to cover formats used in the charts.
|
35
|
-
chart_font_1 = workbook.add_format(:font_only => 1)
|
36
|
-
chart_font_2 = workbook.add_format(:font_only => 1, :bold => 1)
|
37
|
-
chart_font_3 = workbook.add_format(:font_only => 1)
|
38
|
-
chart_font_4 = workbook.add_format(:font_only => 1)
|
39
|
-
|
40
|
-
# Add all other formats.
|
41
|
-
bold = workbook.add_format(:bold => 1)
|
42
|
-
date_format = workbook.add_format(:num_format => 'dd/mm/yyyy')
|
43
|
-
|
44
|
-
# Adjust column widths and add some headers
|
45
|
-
worksheet.set_column('A:A', 12)
|
46
|
-
|
47
|
-
worksheet.write('A1', 'Date', bold)
|
48
|
-
worksheet.write('B1', 'Open', bold)
|
49
|
-
worksheet.write('C1', 'High', bold)
|
50
|
-
worksheet.write('D1', 'Low', bold)
|
51
|
-
worksheet.write('E1', 'Close', bold)
|
52
|
-
|
53
|
-
|
54
|
-
# Add data to range that the chart refers to.
|
55
|
-
dates = [
|
56
|
-
|
57
|
-
"2004-08-19T",
|
58
|
-
"2004-08-20T",
|
59
|
-
"2004-08-23T",
|
60
|
-
"2004-08-24T",
|
61
|
-
"2004-08-25T",
|
62
|
-
"2004-08-26T",
|
63
|
-
"2004-08-27T",
|
64
|
-
"2004-08-30T",
|
65
|
-
"2004-08-31T",
|
66
|
-
"2004-09-01T",
|
67
|
-
"2004-09-02T",
|
68
|
-
"2004-09-03T",
|
69
|
-
"2004-09-07T",
|
70
|
-
"2004-09-08T",
|
71
|
-
"2004-09-09T",
|
72
|
-
"2004-09-10T",
|
73
|
-
"2004-09-13T",
|
74
|
-
"2004-09-14T",
|
75
|
-
"2004-09-15T",
|
76
|
-
"2004-09-16T",
|
77
|
-
"2004-09-17T",
|
78
|
-
"2004-09-20T",
|
79
|
-
"2004-09-21T"
|
80
|
-
]
|
81
|
-
|
82
|
-
# Open-High-Low-Close prices
|
83
|
-
prices = [
|
84
|
-
|
85
|
-
[100.00, 104.06, 95.96, 100.34],
|
86
|
-
[101.01, 109.08, 100.50, 108.31],
|
87
|
-
[110.75, 113.48, 109.05, 109.40],
|
88
|
-
[111.24, 111.60, 103.57, 104.87],
|
89
|
-
[104.96, 108.00, 103.88, 106.00],
|
90
|
-
[104.95, 107.95, 104.66, 107.91],
|
91
|
-
[108.10, 108.62, 105.69, 106.15],
|
92
|
-
[105.28, 105.49, 102.01, 102.01],
|
93
|
-
[102.30, 103.71, 102.16, 102.37],
|
94
|
-
[102.70, 102.97, 99.67, 100.25],
|
95
|
-
[ 99.19, 102.37, 98.94, 101.51],
|
96
|
-
[100.95, 101.74, 99.32, 100.01],
|
97
|
-
[101.01, 102.00, 99.61, 101.58],
|
98
|
-
[100.74, 103.03, 100.50, 102.30],
|
99
|
-
[102.53, 102.71, 101.00, 102.31],
|
100
|
-
[101.60, 106.56, 101.30, 105.33],
|
101
|
-
[106.63, 108.41, 106.46, 107.50],
|
102
|
-
[107.45, 112.00, 106.79, 111.49],
|
103
|
-
[110.56, 114.23, 110.20, 112.00],
|
104
|
-
[112.34, 115.80, 111.65, 113.97],
|
105
|
-
[114.42, 117.49, 113.55, 117.49],
|
106
|
-
[116.95, 121.60, 116.77, 119.36],
|
107
|
-
[119.81, 120.42, 117.51, 117.84]
|
108
|
-
]
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
row = 1
|
113
|
-
dates.each do |d|
|
114
|
-
worksheet.write_date_time(row, 0, d, date_format)
|
115
|
-
row += 1
|
116
|
-
end
|
117
|
-
worksheet.write_col('B2', prices)
|
118
|
-
|
119
|
-
workbook.close
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# -*- coding: utf-8 -*-
|
3
|
+
|
4
|
+
###############################################################################
|
5
|
+
#
|
6
|
+
# Simple example of how to add an externally created chart to a Spreadsheet::
|
7
|
+
# WriteExcel file.
|
8
|
+
#
|
9
|
+
#
|
10
|
+
# This example adds an "Open-high-low-close" stock chart extracted from the
|
11
|
+
# file Chart3.xls as follows:
|
12
|
+
#
|
13
|
+
# perl chartex.pl -c=demo4 Chart4.xls
|
14
|
+
#
|
15
|
+
#
|
16
|
+
# reverse('ゥ'), September 2004, John McNamara, jmcnamara@cpan.org
|
17
|
+
#
|
18
|
+
# original written in Perl by John McNamara
|
19
|
+
# converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
|
20
|
+
#
|
21
|
+
|
22
|
+
require 'writeexcel'
|
23
|
+
|
24
|
+
workbook = WriteExcel.new("demo4.xls")
|
25
|
+
worksheet = workbook.add_worksheet
|
26
|
+
|
27
|
+
# Add the chart extracted using the chartex utility
|
28
|
+
worksheet.embed_chart('G2', 'demo401.bin', 3, 3, 1.08, 1.21)
|
29
|
+
|
30
|
+
# Link the chart to the worksheet data using a dummy formula.
|
31
|
+
worksheet.store_formula('=Sheet1!A1')
|
32
|
+
|
33
|
+
|
34
|
+
# Add some extra formats to cover formats used in the charts.
|
35
|
+
chart_font_1 = workbook.add_format(:font_only => 1)
|
36
|
+
chart_font_2 = workbook.add_format(:font_only => 1, :bold => 1)
|
37
|
+
chart_font_3 = workbook.add_format(:font_only => 1)
|
38
|
+
chart_font_4 = workbook.add_format(:font_only => 1)
|
39
|
+
|
40
|
+
# Add all other formats.
|
41
|
+
bold = workbook.add_format(:bold => 1)
|
42
|
+
date_format = workbook.add_format(:num_format => 'dd/mm/yyyy')
|
43
|
+
|
44
|
+
# Adjust column widths and add some headers
|
45
|
+
worksheet.set_column('A:A', 12)
|
46
|
+
|
47
|
+
worksheet.write('A1', 'Date', bold)
|
48
|
+
worksheet.write('B1', 'Open', bold)
|
49
|
+
worksheet.write('C1', 'High', bold)
|
50
|
+
worksheet.write('D1', 'Low', bold)
|
51
|
+
worksheet.write('E1', 'Close', bold)
|
52
|
+
|
53
|
+
|
54
|
+
# Add data to range that the chart refers to.
|
55
|
+
dates = [
|
56
|
+
|
57
|
+
"2004-08-19T",
|
58
|
+
"2004-08-20T",
|
59
|
+
"2004-08-23T",
|
60
|
+
"2004-08-24T",
|
61
|
+
"2004-08-25T",
|
62
|
+
"2004-08-26T",
|
63
|
+
"2004-08-27T",
|
64
|
+
"2004-08-30T",
|
65
|
+
"2004-08-31T",
|
66
|
+
"2004-09-01T",
|
67
|
+
"2004-09-02T",
|
68
|
+
"2004-09-03T",
|
69
|
+
"2004-09-07T",
|
70
|
+
"2004-09-08T",
|
71
|
+
"2004-09-09T",
|
72
|
+
"2004-09-10T",
|
73
|
+
"2004-09-13T",
|
74
|
+
"2004-09-14T",
|
75
|
+
"2004-09-15T",
|
76
|
+
"2004-09-16T",
|
77
|
+
"2004-09-17T",
|
78
|
+
"2004-09-20T",
|
79
|
+
"2004-09-21T"
|
80
|
+
]
|
81
|
+
|
82
|
+
# Open-High-Low-Close prices
|
83
|
+
prices = [
|
84
|
+
|
85
|
+
[100.00, 104.06, 95.96, 100.34],
|
86
|
+
[101.01, 109.08, 100.50, 108.31],
|
87
|
+
[110.75, 113.48, 109.05, 109.40],
|
88
|
+
[111.24, 111.60, 103.57, 104.87],
|
89
|
+
[104.96, 108.00, 103.88, 106.00],
|
90
|
+
[104.95, 107.95, 104.66, 107.91],
|
91
|
+
[108.10, 108.62, 105.69, 106.15],
|
92
|
+
[105.28, 105.49, 102.01, 102.01],
|
93
|
+
[102.30, 103.71, 102.16, 102.37],
|
94
|
+
[102.70, 102.97, 99.67, 100.25],
|
95
|
+
[ 99.19, 102.37, 98.94, 101.51],
|
96
|
+
[100.95, 101.74, 99.32, 100.01],
|
97
|
+
[101.01, 102.00, 99.61, 101.58],
|
98
|
+
[100.74, 103.03, 100.50, 102.30],
|
99
|
+
[102.53, 102.71, 101.00, 102.31],
|
100
|
+
[101.60, 106.56, 101.30, 105.33],
|
101
|
+
[106.63, 108.41, 106.46, 107.50],
|
102
|
+
[107.45, 112.00, 106.79, 111.49],
|
103
|
+
[110.56, 114.23, 110.20, 112.00],
|
104
|
+
[112.34, 115.80, 111.65, 113.97],
|
105
|
+
[114.42, 117.49, 113.55, 117.49],
|
106
|
+
[116.95, 121.60, 116.77, 119.36],
|
107
|
+
[119.81, 120.42, 117.51, 117.84]
|
108
|
+
]
|
109
|
+
|
110
|
+
|
111
|
+
|
112
|
+
row = 1
|
113
|
+
dates.each do |d|
|
114
|
+
worksheet.write_date_time(row, 0, d, date_format)
|
115
|
+
row += 1
|
116
|
+
end
|
117
|
+
worksheet.write_col('B2', prices)
|
118
|
+
|
119
|
+
workbook.close
|
data/charts/demo5.rb
CHANGED
@@ -1,48 +1,48 @@
|
|
1
|
-
#!/usr/bin/ruby -w
|
2
|
-
# -*- coding: utf-8 -*-
|
3
|
-
|
4
|
-
###############################################################################
|
5
|
-
#
|
6
|
-
# Simple example of how to add an externally created chart to a Spreadsheet::
|
7
|
-
# WriteExcel file.
|
8
|
-
#
|
9
|
-
#
|
10
|
-
# This example adds a line chart extracted from the file Chart1.xls as follows:
|
11
|
-
#
|
12
|
-
# perl chartex.pl -c=demo5 Chart5.xls
|
13
|
-
#
|
14
|
-
#
|
15
|
-
# reverse('ゥ'), September 2004, John McNamara, jmcnamara@cpan.org
|
16
|
-
#
|
17
|
-
# original written in Perl by John McNamara
|
18
|
-
# converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
|
19
|
-
#
|
20
|
-
|
21
|
-
require 'writeexcel'
|
22
|
-
|
23
|
-
workbook = WriteExcel.new("demo5.xls")
|
24
|
-
worksheet = workbook.add_worksheet
|
25
|
-
|
26
|
-
# Add the chart extracted using the chartex utility
|
27
|
-
worksheet.embed_chart('D3', 'demo501.bin')
|
28
|
-
|
29
|
-
# Link the chart to the worksheet data using a dummy formula.
|
30
|
-
worksheet.store_formula('=Sheet1!A1')
|
31
|
-
|
32
|
-
|
33
|
-
# Add some extra formats to cover formats used in the charts.
|
34
|
-
chart_font_1 = workbook.add_format(:font_only => 1)
|
35
|
-
chart_font_2 = workbook.add_format(:font_only => 1)
|
36
|
-
|
37
|
-
# Add all other formats.
|
38
|
-
|
39
|
-
# Add data to range that the chart refers to.
|
40
|
-
nums = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
|
41
|
-
squares = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
worksheet.write_col('A1', nums)
|
46
|
-
worksheet.write_col('B1', squares)
|
47
|
-
|
48
|
-
workbook.close
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# -*- coding: utf-8 -*-
|
3
|
+
|
4
|
+
###############################################################################
|
5
|
+
#
|
6
|
+
# Simple example of how to add an externally created chart to a Spreadsheet::
|
7
|
+
# WriteExcel file.
|
8
|
+
#
|
9
|
+
#
|
10
|
+
# This example adds a line chart extracted from the file Chart1.xls as follows:
|
11
|
+
#
|
12
|
+
# perl chartex.pl -c=demo5 Chart5.xls
|
13
|
+
#
|
14
|
+
#
|
15
|
+
# reverse('ゥ'), September 2004, John McNamara, jmcnamara@cpan.org
|
16
|
+
#
|
17
|
+
# original written in Perl by John McNamara
|
18
|
+
# converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
|
19
|
+
#
|
20
|
+
|
21
|
+
require 'writeexcel'
|
22
|
+
|
23
|
+
workbook = WriteExcel.new("demo5.xls")
|
24
|
+
worksheet = workbook.add_worksheet
|
25
|
+
|
26
|
+
# Add the chart extracted using the chartex utility
|
27
|
+
worksheet.embed_chart('D3', 'demo501.bin')
|
28
|
+
|
29
|
+
# Link the chart to the worksheet data using a dummy formula.
|
30
|
+
worksheet.store_formula('=Sheet1!A1')
|
31
|
+
|
32
|
+
|
33
|
+
# Add some extra formats to cover formats used in the charts.
|
34
|
+
chart_font_1 = workbook.add_format(:font_only => 1)
|
35
|
+
chart_font_2 = workbook.add_format(:font_only => 1)
|
36
|
+
|
37
|
+
# Add all other formats.
|
38
|
+
|
39
|
+
# Add data to range that the chart refers to.
|
40
|
+
nums = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
|
41
|
+
squares = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
worksheet.write_col('A1', nums)
|
46
|
+
worksheet.write_col('B1', squares)
|
47
|
+
|
48
|
+
workbook.close
|
data/examples/a_simple.rb
CHANGED
@@ -1,43 +1,43 @@
|
|
1
|
-
#!/usr/bin/ruby -w
|
2
|
-
# -*- coding: utf-8 -*-
|
3
|
-
#
|
4
|
-
# Example of how to use the WriteExcel module to write text and numbers
|
5
|
-
# to an Excel binary file.
|
6
|
-
#
|
7
|
-
# reverse('©'), March 2001, John McNamara, jmcnamara@cpan.org
|
8
|
-
#
|
9
|
-
# original written in Perl by John McNamara
|
10
|
-
# converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
|
11
|
-
#
|
12
|
-
require 'rubygems'
|
13
|
-
require 'writeexcel'
|
14
|
-
|
15
|
-
# Create a new workbook called simple.xls and add a worksheet
|
16
|
-
workbook = WriteExcel.new('a_simple.xls');
|
17
|
-
worksheet = workbook.add_worksheet
|
18
|
-
|
19
|
-
# The general syntax is write(row, column, token). Note that row and
|
20
|
-
# column are zero indexed
|
21
|
-
#
|
22
|
-
|
23
|
-
# Write some text
|
24
|
-
worksheet.write(0, 0, "Hi Excel!")
|
25
|
-
|
26
|
-
|
27
|
-
# Write some numbers
|
28
|
-
worksheet.write(2, 0, 3) # Writes 3
|
29
|
-
worksheet.write(3, 0, 3.00000) # Writes 3
|
30
|
-
worksheet.write(4, 0, 3.00001) # Writes 3.00001
|
31
|
-
worksheet.write(5, 0, 3.14159) # TeX revision no.?
|
32
|
-
|
33
|
-
|
34
|
-
# Write some formulas
|
35
|
-
worksheet.write(7, 0, '=A3 + A6')
|
36
|
-
worksheet.write(8, 0, '=IF(A5>3,"Yes", "No")')
|
37
|
-
|
38
|
-
|
39
|
-
# Write a hyperlink
|
40
|
-
worksheet.write(10, 0, 'http://www.perl.com/')
|
41
|
-
|
42
|
-
# File save
|
43
|
-
workbook.close
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# -*- coding: utf-8 -*-
|
3
|
+
#
|
4
|
+
# Example of how to use the WriteExcel module to write text and numbers
|
5
|
+
# to an Excel binary file.
|
6
|
+
#
|
7
|
+
# reverse('©'), March 2001, John McNamara, jmcnamara@cpan.org
|
8
|
+
#
|
9
|
+
# original written in Perl by John McNamara
|
10
|
+
# converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
|
11
|
+
#
|
12
|
+
require 'rubygems'
|
13
|
+
require 'writeexcel'
|
14
|
+
|
15
|
+
# Create a new workbook called simple.xls and add a worksheet
|
16
|
+
workbook = WriteExcel.new('a_simple.xls');
|
17
|
+
worksheet = workbook.add_worksheet
|
18
|
+
|
19
|
+
# The general syntax is write(row, column, token). Note that row and
|
20
|
+
# column are zero indexed
|
21
|
+
#
|
22
|
+
|
23
|
+
# Write some text
|
24
|
+
worksheet.write(0, 0, "Hi Excel!")
|
25
|
+
|
26
|
+
|
27
|
+
# Write some numbers
|
28
|
+
worksheet.write(2, 0, 3) # Writes 3
|
29
|
+
worksheet.write(3, 0, 3.00000) # Writes 3
|
30
|
+
worksheet.write(4, 0, 3.00001) # Writes 3.00001
|
31
|
+
worksheet.write(5, 0, 3.14159) # TeX revision no.?
|
32
|
+
|
33
|
+
|
34
|
+
# Write some formulas
|
35
|
+
worksheet.write(7, 0, '=A3 + A6')
|
36
|
+
worksheet.write(8, 0, '=IF(A5>3,"Yes", "No")')
|
37
|
+
|
38
|
+
|
39
|
+
# Write a hyperlink
|
40
|
+
worksheet.write(10, 0, 'http://www.perl.com/')
|
41
|
+
|
42
|
+
# File save
|
43
|
+
workbook.close
|