| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- package xlsx
- import (
- "encoding/xml"
- )
- // xlsxWorksheet directly maps the worksheet element in the namespace
- // http://schemas.openxmlformats.org/spreadsheetml/2006/main -
- // currently I have not checked it for completeness - it does as much
- // as I need.
- type xlsxWorksheet struct {
- XMLName xml.Name `xml:"http://schemas.openxmlformats.org/spreadsheetml/2006/main worksheet"`
- Dimension xlsxDimension `xml:"dimension"`
- SheetData xlsxSheetData `xml:"sheetData"`
- }
- // xlsxDimension directly maps the dimension element in the namespace
- // http://schemas.openxmlformats.org/spreadsheetml/2006/main -
- // currently I have not checked it for completeness - it does as much
- // as I need.
- type xlsxDimension struct {
- Ref string `xml:"ref,attr"`
- }
- // xlsxSheetData directly maps the sheetData element in the namespace
- // http://schemas.openxmlformats.org/spreadsheetml/2006/main -
- // currently I have not checked it for completeness - it does as much
- // as I need.
- type xlsxSheetData struct {
- XMLName xml.Name `xml:"sheetData"`
- Row []xlsxRow `xml:"row"`
- }
- // xlsxRow directly maps the row element in the namespace
- // http://schemas.openxmlformats.org/spreadsheetml/2006/main -
- // currently I have not checked it for completeness - it does as much
- // as I need.
- type xlsxRow struct {
- R int `xml:"r,attr"`
- Spans string `xml:"spans,attr,omitempty"`
- C []xlsxC `xml:"c"`
- }
- // xlsxC directly maps the c element in the namespace
- // http://schemas.openxmlformats.org/sprceadsheetml/2006/main -
- // currently I have not checked it for completeness - it does as much
- // as I need.
- type xlsxC struct {
- R string `xml:"r,attr"` // Cell ID, e.g. A1
- S int `xml:"s,attr,omitempty"` // Style reference.
- T string `xml:"t,attr"` // Type.
- V string `xml:"v"` // Value
- }
- // get cell
- func (sh *Sheet) Cell(row, col int) *Cell {
- if len(sh.Rows) > row && sh.Rows[row] != nil && len(sh.Rows[row].Cells) > col {
- return sh.Rows[row].Cells[col]
- }
- return new(Cell)
- }
|