2011-10-11 15 views

Respuesta

16
book = Spreadsheet::Workbook.new 
sheet = book.create_worksheet :name => 'Name' 
format = Spreadsheet::Format.new :color=> :blue, :pattern_fg_color => :yellow, :pattern => 1 
sheet.row(0).set_format(0, format) #for first cell in first row 

o

sheet.row(0).default_format = format #for entire first row 

puede iterar sobre cada fila/celular y aplique el estilo exactamente donde lo desee

+2

Bien, el los documentos son horribles! ¡Gracias! – yekta

+0

De alguna manera no funciona para mí - http://stackoverflow.com/questions/24608513/not-able-to-style-excel-with-spreadsheet-gem-ruby –

+2

Este es el código para establecer el color de fondo, en lugar de leyéndolo, que es lo que el OP solicitó. –

1

He estado tratando de descubrir lo mismo, y parece que en la versión actual (0.6.5.9) de la gema Hoja de cálculo el atributo del color de fondo de la celda no es compatible con el lector (solo se puede definir el color de fondo en celdas para escribir).

Aquí es cómo comprobar todos los atributos de celda disponible actualmente:

a = Spreadsheet.open('/folder/spreadsheet.xls') 
puts a.worksheets[0].row(<rownumber>).format(<columnnumber>).inspect 

Después de algunos experimentos, sin embargo me di cuenta de que no todos ellos se extraerán. La buena noticia es que los desarrolladores prometen para implementar un mejor soporte para los formatos de celda en futuras versiones, por lo que sólo tiene que ser paciente :)

+0

http://stackoverflow.com/questions/24608513/not-able-to-style-excel-with-spreadsheet-gem-ruby –

4

Estaba buscando colores que pueda usar para el color de fondo de una celda. Por ejemplo:

Spreadsheet::Format.new({ :weight => :bold, :pattern => 1, :pattern_fg_color => :silver }) 

No he podido encontrar una buena información sobre los colores que podría usar para: pattern_fg_color. Decidí buscar ayuda de Excel y encontré: http://dmcritchie.mvps.org/excel/colors.htm (en "Las asignaciones de DOS de los 16 colores").

Parece que los 16 mejores colores funcionan:

0 Negro, 1 Marina, 2 verdes, 3 Teal, 4 granate, 5 púrpura 6 de oliva, 7 de plata, 8 Grey, 9 azules, 10 lima, 11 Aqua, 12 Rojo, 13 Fuschia, 14 Amarillo, 15 Blanco

+1

Puede tener más opciones de coloreado como se menciona - http://www.softwaremaniacs.net/2013/11/setting-cell-color-using-ruby.html –

Cuestiones relacionadas