Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed #1 別のサイトのサンプル追加 #2

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 11 additions & 8 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
GEM
remote: https://rubygems.org/
specs:
ffi (1.9.6)
libreconv (0.9.0)
ffi (1.9.18)
libreconv (0.9.1)
spoon
mini_portile (0.6.1)
nokogiri (1.6.5)
mini_portile (~> 0.6.0)
rubyXL (3.3.1)
mini_portile2 (2.2.0)
nokogiri (1.8.0)
mini_portile2 (~> 2.2.0)
rubyXL (3.3.26)
nokogiri (>= 1.4.4)
rubyzip (>= 1.1.6)
rubyzip (1.1.6)
spoon (0.0.4)
rubyzip (1.2.1)
spoon (0.0.6)
ffi

PLATFORMS
Expand All @@ -20,3 +20,6 @@ PLATFORMS
DEPENDENCIES
libreconv
rubyXL

BUNDLED WITH
1.13.3
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,8 @@ rubyxl_sample
=============

rubyXLを利用するときのTipsをまとめたリポジトリです。
[rubyXLでシートをコピーしたりシートを削除したりする(訂正)](http://blog.beaglesoft.net/entry/%3Fp%3D745)をベースに

[rubyXL Rubyでエクセルファイル(xlsx)を生成](http://symfoware.blog68.fc2.com/blog-entry-1868.html)の記事のコードを追加した記録です。

各サンプルで出力されるxlsxファイルはoutputsディレクトリ以下に置かれます。
15 changes: 15 additions & 0 deletions add_sheet.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# coding:utf-8
require 'rubyXL'
# 新しいworkbookの作成
workbook = RubyXL::Workbook.new
# worksheetを取得
# デフォルトで1つ生成されている
worksheet = workbook[0]
# シートの名前を変更
worksheet.sheet_name = '新しいシート名'
# セルに文字を追加
worksheet.add_cell(0, 1, 'B1セル')
# 2シート目を追加
worksheet = workbook.add_worksheet('次のシート')
# sample.xlsxという名前で保存
workbook.write('outputs/add_sheet.xlsx')
17 changes: 17 additions & 0 deletions border.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# coding:utf-8
require 'rubyXL'
# 新しいworkbookの作成
workbook = RubyXL::Workbook.new
# worksheetを取得
# デフォルトで1つ生成されている
worksheet = workbook[0]
# セルに文字を追加
cell = worksheet.add_cell(0, 1, '')
# セルの下に罫線を引く
cell.change_border(:bottom, 'medium')
# 細い罫線を引く
# チェインメソッドな指定も可能
cell = worksheet.add_cell(0, 3, '')
.change_border(:bottom, 'thin')
# sample.xlsxという名前で保存
workbook.write('outputs/border.xlsx')
14 changes: 14 additions & 0 deletions cell_format.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# coding:utf-8
require 'rubyXL'
# 新しいworkbookの作成
workbook = RubyXL::Workbook.new
# worksheetを取得
# デフォルトで1つ生成されている
worksheet = workbook[0]
# セルに文字を追加
cell = worksheet.add_cell(0, 1, 12345)
# 書式設定
# see https://support.office.com/en-us/article/5026bbd6-04bc-48cd-bf33-80f18b4eae68
cell.set_number_format('#,##0')
# sample.xlsxという名前で保存
workbook.write('outputs/cell_format.xlsx')
19 changes: 19 additions & 0 deletions change_font.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# coding:utf-8
require 'rubyXL'
# 新しいworkbookの作成
workbook = RubyXL::Workbook.new
# worksheetを取得
# デフォルトで1つ生成されている
worksheet = workbook[0]
# セルに文字を追加
cell = worksheet.add_cell(0, 1, 'B1')
# フォントを変更
cell.change_font_name '梅明朝'
# フォントサイズを変更
cell.change_font_size 20
# フォントの色を変更
cell.change_font_color 'ff0000'
# セルの色を変更
cell.change_fill '00ff00'
# sample.xlsxという名前で保存
workbook.write('outputs/change_font.xlsx')
13 changes: 13 additions & 0 deletions column_width.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# coding:utf-8
require 'rubyXL'
# 新しいworkbookの作成
workbook = RubyXL::Workbook.new
# worksheetを取得
# デフォルトで1つ生成されている
worksheet = workbook[0]
# セルに文字を追加
cell = worksheet.add_cell(0, 1, '長い文字列ですよー')
# 幅を広げる
worksheet.change_column_width(1, 20)
# sample.xlsxという名前で保存
workbook.write('outputs/column_width.xlsx')
14 changes: 14 additions & 0 deletions default_format.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# coding:utf-8
require 'rubyXL'
# 新しいworkbookの作成
workbook = RubyXL::Workbook.new
# フォントのデフォルト指定
workbook.fonts[0].set_name('梅明朝')
workbook.fonts[0].set_size(14)
# worksheetを取得
# デフォルトで1つ生成されている
worksheet = workbook[0]
# セルに文字を追加
cell = worksheet.add_cell(0, 1, '日本語')
# sample.xlsxという名前で保存
workbook.write('outputs/default_format.xlsx')
10 changes: 10 additions & 0 deletions fit_to_page.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# coding:utf-8
require 'rubyXL'
# あらかじめページにあわせるを設定したworkbookを読み込む
workbook = RubyXL::Parser.parse('inputs/fit_to_page.xlsx')
# worksheetを取得
worksheet = workbook[0]
# セルに文字を追加
cell = worksheet.add_cell(0, 1, 12345)
# sample.xlsxという名前で保存
workbook.write('outputs/fit_to_page.xlsx')
Binary file added inputs/fit_to_page.xlsx
Binary file not shown.
1 change: 1 addition & 0 deletions main.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# coding: utf-8
require 'rubyXL'

# ワークブックの読込
Expand Down
12 changes: 12 additions & 0 deletions merge_cells.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# coding:utf-8
require 'rubyXL'
# 新しいworkbookの作成
workbook = RubyXL::Workbook.new
# worksheetを取得
# デフォルトで1つ生成されている
worksheet = workbook[0]
# セルに文字を追加
worksheet.merge_cells(0, 0, 1, 1)
# 幅を広げる
# sample.xlsxという名前で保存
workbook.write('outputs/merge_cells.xlsx')