const ( DVCompareTypeWholeNumber = DVCompareType(sml.ST_DataValidationTypeWhole) DVCompareTypeDecimal = DVCompareType(sml.ST_DataValidationTypeDecimal) DVCompareTypeDate = DVCompareType(sml.ST_DataValidationTypeDate) DVCompareTypeTime = DVCompareType(sml.ST_DataValidationTypeTime) DVompareTypeTextLength = DVCompareType(sml.ST_DataValidationTypeTextLength) )
const ( DVCompareOpEqual = DVCompareOp(sml.ST_DataValidationOperatorEqual) DVCompareOpBetween = DVCompareOp(sml.ST_DataValidationOperatorBetween) DVCompareOpNotBetween = DVCompareOp(sml.ST_DataValidationOperatorNotBetween) DVCompareOpNotEqual = DVCompareOp(sml.ST_DataValidationOperatorNotEqual) DVCompareOpGreater = DVCompareOp(sml.ST_DataValidationOperatorGreaterThan) DVCompareOpGreaterEqual = DVCompareOp(sml.ST_DataValidationOperatorGreaterThanOrEqual) DVCompareOpLess = DVCompareOp(sml.ST_DataValidationOperatorLessThan) DVCompareOpLessEqual = DVCompareOp(sml.ST_DataValidationOperatorLessThanOrEqual) )
const ( DVOpGreater = sml.ST_DataValidationOperatorGreaterThanOrEqual )
ErrorNotFound is returned when something is not found
var ErrorNotFound = errors.New("not found")
func PasswordHash(s string) string
PasswordHash returns the password hash for a workbook using the modified spreadsheetML password hash that is compatible with Excel.
AbsoluteAnchor has a fixed top-left corner in distance units as well as a fixed height/width.
type AbsoluteAnchor struct {
// contains filtered or unexported fields
}
func (a AbsoluteAnchor) BottomRight() CellMarker
BottomRight is a no-op.
func (a AbsoluteAnchor) MoveTo(x, y int32)
MoveTo is a no-op.
func (a AbsoluteAnchor) SetColOffset(m measurement.Distance)
SetColOffset sets the column offset of the top-left of the image in fixed units.
func (a AbsoluteAnchor) SetHeight(h measurement.Distance)
SetHeight sets the height of the anchored object.
func (a AbsoluteAnchor) SetHeightCells(int32)
SetHeightCells is a no-op.
func (a AbsoluteAnchor) SetRowOffset(m measurement.Distance)
SetRowOffset sets the row offset of the top-left of the image in fixed units.
func (a AbsoluteAnchor) SetWidth(w measurement.Distance)
SetWidth sets the width of the anchored object.
func (a AbsoluteAnchor) SetWidthCells(int32)
SetWidthCells is a no-op.
func (a AbsoluteAnchor) TopLeft() CellMarker
TopLeft is a no-op.
func (a AbsoluteAnchor) Type() AnchorType
Type returns the type of anchor
Anchor is the interface implemented by anchors. It's modeled after the most common anchor (Two cell variant with a from/to position), but will also be used for one-cell anchors. In that case the only non-noop methods are TopLeft/MoveTo/SetColOffset/SetRowOffset.
type Anchor interface { // BottomRight returns the CellMaker for the bottom right corner of the // anchor. BottomRight() CellMarker // TopLeft returns the CellMaker for the top left corner of the anchor. TopLeft() CellMarker // MoveTo repositions the anchor without changing the objects size. MoveTo(col, row int32) // SetWidth sets the width of the anchored object. It is not compatible with // SetWidthCells. SetWidth(w measurement.Distance) // SetWidthCells sets the height the anchored object by moving the right // hand side. It is not compatible with SetWidth. SetWidthCells(w int32) // SetHeight sets the height of the anchored object. It is not compatible // with SetHeightCells. SetHeight(w measurement.Distance) // SetHeightCells sets the height the anchored object by moving the bottom. // It is not compatible with SetHeight. SetHeightCells(h int32) // SetColOffset sets the column offset of the top-left anchor. SetColOffset(m measurement.Distance) // SetRowOffset sets the row offset of the top-left anchor. SetRowOffset(m measurement.Distance) // Type returns the type of anchor Type() AnchorType }
AnchorType is the type of anchor.
type AnchorType byte
AnchorType constants
const ( AnchorTypeAbsolute AnchorType = iota AnchorTypeOneCell AnchorTypeTwoCell )
Border is a cell border configuraton.
type Border struct {
// contains filtered or unexported fields
}
func (b Border) Index() uint32
Index returns the index of the border for use with a cell style.
func (b Border) InitializeDefaults()
InitializeDefaults initializes a border to its defaulte empty values.
func (b Border) SetBottom(style sml.ST_BorderStyle, c color.Color)
func (b Border) SetDiagonal(style sml.ST_BorderStyle, c color.Color, up, down bool)
func (b Border) SetLeft(style sml.ST_BorderStyle, c color.Color)
func (b Border) SetRight(style sml.ST_BorderStyle, c color.Color)
func (b Border) SetTop(style sml.ST_BorderStyle, c color.Color)
func (b Border) X() *sml.CT_Border
X returns the inner wrapped XML type.
Cell is a single cell within a sheet.
type Cell struct {
// contains filtered or unexported fields
}
func (c Cell) AddHyperlink(url string)
AddHyperlink creates and sets a hyperlink on a cell.
func (c Cell) Clear()
Clear clears the cell's value and type.
func (c Cell) Column() (string, error)
Column returns the cell column
func (c Cell) GetCachedFormulaResult() string
GetCachedFormulaResult returns the cached formula result if it exists. If the cell type is not a formula cell, the result will be the cell value if it's a string/number/bool cell.
func (c Cell) GetFormattedValue() string
GetFormattedValue returns the formatted cell value as it would appear in Excel. This involves determining the format string to apply, parsing it, and then formatting the value according to the format string. This should only be used if you care about replicating what Excel would show, otherwise GetValueAsNumber()/GetValueAsTime
func (c Cell) GetFormula() string
GetFormula returns the formula for a cell.
func (c Cell) GetRawValue() (string, error)
func (c Cell) GetString() string
GetString returns the string in a cell if it's an inline or string table string. Otherwise it returns an empty string.
func (c Cell) GetValueAsBool() (bool, error)
GetValueAsBool retrieves the cell's value as a boolean
func (c Cell) GetValueAsNumber() (float64, error)
GetValueAsNumber retrieves the cell's value as a number
func (c Cell) GetValueAsTime() (time.Time, error)
GetValueAsTime retrieves the cell's value as a time. There is no difference in SpreadsheetML between a time/date cell other than formatting, and that typically a date cell won't have a fractional component. GetValueAsTime will work for date cells as well.
func (c Cell) HasFormula() bool
HasFormula returns true if the cell has an asoociated formula.
func (c Cell) IsBool() bool
IsBool returns true if the cell is a boolean type cell.
func (c Cell) IsEmpty() bool
IsEmpty returns true if the cell is empty.
func (c Cell) IsError() bool
IsError returns true if the cell is an error type cell.
func (c Cell) IsNumber() bool
IsNumber returns true if the cell is a number type cell.
func (c Cell) Reference() string
Reference returns the cell reference (e.g. "A4"). This is not required, however both unioffice and Excel will always set it.
func (c Cell) SetBool(v bool)
SetBool sets the cell type to boolean and the value to the given boolean value.
func (c Cell) SetCachedFormulaResult(s string)
SetCachedFormulaResult sets the cached result of a formula. This is normally not needed but is used internally when expanding an array formula.
func (c Cell) SetDate(d time.Time)
SetDate sets the cell value to a date. It's stored as the number of days past th sheet epoch. When we support v5 strict, we can store an ISO 8601 date string directly, however that's not allowed with v5 transitional (even though it works in Excel). The cell is not styled via this method, so it will display as a number. SetDateWithStyle should normally be used instead.
func (c Cell) SetDateWithStyle(d time.Time)
SetDateWithStyle sets a date with the default date style applied.
func (c Cell) SetError(msg string)
SetError sets the cell type to error and the value to the given error message.
func (c Cell) SetFormulaArray(s string)
SetFormulaArray sets the cell type to formula array, and the raw formula to the given string. This is equivlent to entering a formula and pressing Ctrl+Shift+Enter in Excel.
func (c Cell) SetFormulaRaw(s string)
SetFormulaRaw sets the cell type to formula, and the raw formula to the given string
func (c Cell) SetFormulaShared(formulaStr string, rows, cols uint32) error
SetFormulaShared sets the cell type to formula shared, and the raw formula to the given string. The range is the range of cells that the formula applies to, and is used to conserve disk space.
func (c Cell) SetHyperlink(hl common.Hyperlink)
SetHyperlink sets a hyperlink on a cell.
func (c Cell) SetInlineString(s string)
SetInlineString adds a string inline instead of in the shared strings table.
func (c Cell) SetNumber(v float64)
SetNumber sets the cell type to number, and the value to the given number
func (c Cell) SetNumberWithStyle(v float64, f StandardFormat)
SetNumberWithStyle sets a number and applies a standard format to the cell.
func (c Cell) SetRichTextString() RichText
SetRichTextString sets the cell to rich string mode and returns a struct that can be used to add formatted text to the cell.
func (c Cell) SetString(s string) int
SetString sets the cell type to string, and the value to the given string, returning an ID from the shared strings table. To reuse a string, call SetStringByID with the ID returned.
func (c Cell) SetStringByID(id int)
SetStringByID sets the cell type to string, and the value a string in the shared strings table.
func (c Cell) SetStyle(cs CellStyle)
SetStyle applies a style to a cell avoiding redundancy. The function checks if the given style already exists in the saved styles. If found, the existing style is reused; otherwise, the new style is added to the saved styles collection. The style is then applied to the cell. This style is referenced in the generated XML via CellStyle.Index().
func (c Cell) SetStyleIndex(idx uint32)
SetStyleIndex directly sets a style index to the cell. This should only be called with an index retrieved from CellStyle.Index()
func (c Cell) SetTime(d time.Time)
SetTime sets the cell value to a date. It's stored as the number of days past th sheet epoch. When we support v5 strict, we can store an ISO 8601 date string directly, however that's not allowed with v5 transitional (even though it works in Excel).
func (c Cell) X() *sml.CT_Cell
X returns the inner wrapped XML type.
CellMarker represents a cell position
type CellMarker struct {
// contains filtered or unexported fields
}
func (c CellMarker) Col() int32
Col returns the column of the cell marker.
func (c CellMarker) ColOffset() measurement.Distance
ColOffset returns the offset from the row cell.
func (c CellMarker) Row() int32
Row returns the row of the cell marker.
func (c CellMarker) RowOffset() measurement.Distance
RowOffset returns the offset from the row cell.
func (c CellMarker) SetCol(col int32)
SetCol set the column of the cell marker.
func (c CellMarker) SetColOffset(m measurement.Distance)
SetColOffset sets a column offset in absolute distance.
func (c CellMarker) SetRow(row int32)
SetRow set the row of the cell marker.
func (c CellMarker) SetRowOffset(m measurement.Distance)
SetRowOffset sets a column offset in absolute distance.
func (c CellMarker) X() *sd.CT_Marker
X returns the inner wrapped XML type.
CellStyle is a formatting style for a cell. CellStyles are spreadsheet global and can be applied to cells across sheets.
type CellStyle struct {
// contains filtered or unexported fields
}
func (cs CellStyle) ClearBorder()
ClearBorder clears any border configuration from the cell style.
func (cs CellStyle) ClearFill()
ClearFill clears any fill configuration from the cell style.
func (cs CellStyle) ClearFont()
ClearFont clears any font configuration from the cell style.
func (cs CellStyle) ClearNumberFormat()
ClearNumberFormat removes any number formatting from the style.
func (cs CellStyle) GetBorder() *sml.CT_Border
GetBorder gets a Border from a cell style.
func (cs CellStyle) GetFill() *sml.CT_Fill
GetFill gets a Fill from a cell style.
func (cs CellStyle) GetFont() *sml.CT_Font
GetFont gets a Font from a cell style.
func (cs CellStyle) GetHorizontalAlignment() sml.ST_HorizontalAlignment
GetHorizontalAlignment sets the horizontal alignment of a cell style.
func (cs CellStyle) GetVerticalAlignment() sml.ST_VerticalAlignment
GetVerticalAlignment sets the vertical alignment of a cell style.
func (cs CellStyle) HasNumberFormat() bool
HasNumberFormat returns true if the cell style has a number format applied.
func (cs CellStyle) Index() uint32
func (cs CellStyle) IsEmpty() bool
IsEmpty checks if the cell style contains nothing.
func (cs CellStyle) NumberFormat() uint32
NumberFormat returns the number format that the cell style uses, or zero if it is not set.
func (cs CellStyle) SetBorder(b Border)
SetBorder applies a border to a cell style avoiding redundancy. The function checks if the given border already exists in the saved borders. If found, the existing border is reused; otherwise, the new border is added to the saved borders collection. The border is then applied to the cell style, affecting all styles that reference it by index.
func (cs CellStyle) SetFill(f Fill)
SetFill applies a fill to a cell style avoiding redundancy. The function checks if the given fill already exists in the saved fills. If found, the existing fill is reused; otherwise, the new fill is added to the saved fills collection. The fill is then applied to the cell style, affecting all styles that reference it by index.
func (cs CellStyle) SetFont(f Font)
SetFont applies a font to a cell style avoiding redundancy. The function checks if the given font already exists in the saved fonts. If found, the existing font is reused; otherwise, the new font is added to the saved fonts collection. The font is then applied to the cell style, affecting all styles that reference it by index.
func (cs CellStyle) SetHorizontalAlignment(a sml.ST_HorizontalAlignment)
SetHorizontalAlignment sets the horizontal alignment of a cell style.
func (cs CellStyle) SetNumberFormat(s string)
SetNumberFormat applies a number format to a cell style avoiding redundancy. The function checks if the given string already exists in the saved number formats. If found, the existing number format is reused; otherwise, the new number format is added to the saved number formats collection. The number format is then applied to the cell style, affecting all styles that reference it by index.
func (cs CellStyle) SetNumberFormatStandard(s StandardFormat)
SetNumberFormatStandard sets the format based off of the ECMA 376 standard formats. These formats are standardized and don't need to be defined in the styles.
func (cs CellStyle) SetProtection(protected bool, hidden bool)
SetProtectedAndHidden sets protected and hidden for given cellStyle
func (cs CellStyle) SetRotation(deg uint8)
SetRotation configures the cell to be rotated.
func (cs CellStyle) SetShrinkToFit(b bool)
func (cs CellStyle) SetVerticalAlignment(a sml.ST_VerticalAlignment)
SetVerticalAlignment sets the vertical alignment of a cell style.
func (cs CellStyle) SetWrapped(b bool)
SetWrapped configures the cell to wrap text.
func (cs CellStyle) Wrapped() bool
Wrapped returns true if the cell will wrap text.
CellText is used for keeping text with references to a cell where it is located.
type CellText struct { Text string Cell Cell }
ColorScale colors a cell background based off of the cell value.
type ColorScale struct {
// contains filtered or unexported fields
}
func (c ColorScale) AddFormatValue(t sml.ST_CfvoType, val string)
AddFormatValue adds a format value to be used to determine the cell background.
func (c ColorScale) AddGradientStop(color color.Color)
AddGradientStop adds a color gradient stop.
func (c ColorScale) X() *sml.CT_ColorScale
X returns the inner wrapped XML type.
Column represents a column within a sheet. It's only used for formatting purposes, so it's possible to construct a sheet without configuring columns.
type Column struct {
// contains filtered or unexported fields
}
func (c Column) SetHidden(b bool)
SetHidden controls the visibility of a column.
func (c Column) SetStyle(cs CellStyle)
SetStyle sets the cell style for an entire column.
func (c Column) SetWidth(w measurement.Distance)
SetWidth controls the width of a column.
func (c Column) X() *sml.CT_Col
X returns the inner wrapped XML type.
Comment is a single comment within a sheet.
type Comment struct {
// contains filtered or unexported fields
}
func (c Comment) Author() string
Author returns the author of the comment
func (c Comment) CellReference() string
CellReference returns the cell reference within a sheet that a comment refers to (e.g. "A1")
func (c Comment) SetAuthor(author string)
SetAuthor sets the author of the comment. If the comment body contains the author's name (as is the case with Excel and Comments.AddCommentWithStyle, it will not be changed). This method only changes the metadata author of the comment.
func (c Comment) SetCellReference(cellRef string)
SetCellReference sets the cell reference within a sheet that a comment refers to (e.g. "A1")
func (c Comment) X() *sml.CT_Comment
X returns the inner wrapped XML type.
Comments is the container for comments for a single sheet.
type Comments struct {
// contains filtered or unexported fields
}
func MakeComments(w *Workbook, x *sml.Comments) Comments
MakeComments constructs a new Comments wrapper.
func (c Comments) AddComment(cellRef string, author string) RichText
AddComment adds a new comment and returns a RichText which will contain the styled comment text.
func (c Comments) AddCommentWithStyle(cellRef string, author string, comment string) error
AddCommentWithStyle adds a new comment styled in a default way
func (c Comments) Comments() []Comment
Comments returns the list of comments for this sheet
func (c Comments) X() *sml.Comments
X returns the inner wrapped XML type.
Comparer is used to compare rows based off a column and cells based off of their value.
type Comparer struct { Order SortOrder }
func (c Comparer) LessCells(lhs, rhs Cell) bool
LessCells returns true if the lhs value is less than the rhs value. If the cells contain numeric values, their value interpreted as a floating point is compared. Otherwise their string contents are compared.
func (c Comparer) LessRows(column string, lhs, rhs Row) bool
LessRows compares two rows based off of a column. If the column doesn't exist in one row, that row is 'less'.
ConditionalFormatting controls the formatting styles and rules for a range of cells with the same conditional formatting.
type ConditionalFormatting struct {
// contains filtered or unexported fields
}
func (c ConditionalFormatting) AddRule() ConditionalFormattingRule
AddRule adds and returns a new rule that can be configured.
func (c ConditionalFormatting) X() *sml.CT_ConditionalFormatting
X returns the inner wrapped XML type.
type ConditionalFormattingRule struct {
// contains filtered or unexported fields
}
func (c ConditionalFormattingRule) InitializeDefaults()
func (c ConditionalFormattingRule) Operator() sml.ST_ConditionalFormattingOperator
Operator returns the operator for the rule
func (c ConditionalFormattingRule) Priority() int32
Priority returns the rule priority
func (c ConditionalFormattingRule) SetColorScale() ColorScale
SetColorScale configures the rule as a color scale, removing existing configuration.
func (c ConditionalFormattingRule) SetConditionValue(v string)
SetConditionValue sets the condition value to be used for style applicaton.
func (c ConditionalFormattingRule) SetDataBar() DataBarScale
SetDataBar configures the rule as a data bar, removing existing configuration.
func (c ConditionalFormattingRule) SetIcons() IconScale
SetIcons configures the rule as an icon scale, removing existing configuration.
func (c ConditionalFormattingRule) SetOperator(t sml.ST_ConditionalFormattingOperator)
SetOperator sets the operator for the rule.
func (c ConditionalFormattingRule) SetPriority(p int32)
SetPriority sets the rule priority
func (c ConditionalFormattingRule) SetStyle(d DifferentialStyle)
SetStyle sets the style to be used for conditional rules
func (c ConditionalFormattingRule) SetType(t sml.ST_CfType)
SetType sets the type of the rule.
func (c ConditionalFormattingRule) Type() sml.ST_CfType
Type returns the type of the rule
func (c ConditionalFormattingRule) X() *sml.CT_CfRule
X returns the inner wrapped XML type.
DVCompareOp is a comparison operator for a data validation rule.
type DVCompareOp byte
DVCompareType is a comparison type for a data validation rule. This restricts the input format of the cell.
type DVCompareType byte
DataBarScale is a colored scale that fills the cell with a background gradeint depending on the value.
type DataBarScale struct {
// contains filtered or unexported fields
}
func (d DataBarScale) AddFormatValue(t sml.ST_CfvoType, val string)
AddFormatValue adds a format value (databars require two).
func (d DataBarScale) SetColor(c color.Color)
SetColor sets teh color of the databar.
func (d DataBarScale) SetMaxLength(l uint32)
SetMaxLength sets the maximum bar length in percent.
func (d DataBarScale) SetMinLength(l uint32)
SetMinLength sets the minimum bar length in percent.
func (d DataBarScale) SetShowValue(b bool)
SetShowValue controls if the cell value is displayed.
func (d DataBarScale) X() *sml.CT_DataBar
X returns the inner wrapped XML type.
DataValidation controls cell validation
type DataValidation struct {
// contains filtered or unexported fields
}
func (d DataValidation) SetAllowBlank(b bool)
SetAllowBlank controls if blank values are accepted.
func (d DataValidation) SetComparison(t DVCompareType, op DVCompareOp) DataValidationCompare
func (d DataValidation) SetList() DataValidationList
func (d DataValidation) SetRange(cellRange string)
SetRange sets the cell or range of cells that the validation should apply to. It can be a single cell (e.g. "A1") or a range of cells (e.g. "A1:B5")
func (d DataValidation) X() *sml.CT_DataValidation
X returns the inner wrapped XML type.
DataValidationCompare is a view on a data validation rule that is oriented towards value comparisons.
type DataValidationCompare struct {
// contains filtered or unexported fields
}
func (d DataValidationCompare) SetValue(v string)
SetValue sets the first value to be used in the comparison. For comparisons that need only one value, this is the only value used. For comparisons like 'between' that require two values, SetValue2 must also be used.
func (d DataValidationCompare) SetValue2(v string)
DataValidationList is just a view on a DataValidation configured as a list. It presents a drop-down combo box for spreadsheet users to select values. The contents of the dropdown can either pull from a rang eof cells (SetRange) or specified directly (SetValues).
type DataValidationList struct {
// contains filtered or unexported fields
}
func (d DataValidationList) SetRange(cellRange string)
SetRange sets the range that contains the possible values. This is incompatible with SetValues.
func (d DataValidationList) SetValues(values []string)
SetValues sets the possible values. This is incompatible with SetRange.
DefinedName is a named range, formula, etc.
type DefinedName struct {
// contains filtered or unexported fields
}
func (d DefinedName) Content() string
Content returns the content of the defined range (the range in most cases)/
func (d DefinedName) Name() string
Name returns the name of the defined name.
func (d DefinedName) SetContent(s string)
SetContent sets the defined name content.
func (d DefinedName) SetHidden(b bool)
SetHidden marks the defined name as hidden.
func (d DefinedName) SetLocalSheetID(id uint32)
SetHidden marks the defined name as hidden.
func (d DefinedName) X() *sml.CT_DefinedName
X returns the inner wrapped XML type.
type DifferentialStyle struct {
// contains filtered or unexported fields
}
func (d DifferentialStyle) Fill() Fill
func (d DifferentialStyle) Index() uint32
Index returns the index of the differential style.
func (d DifferentialStyle) X() *sml.CT_Dxf
X returns the inner wrapped XML type.
Drawing is a drawing overlay on a sheet. Only a single drawing is allowed per sheet, so to display multiple charts and images on a single sheet, they must be added to the same drawing.
type Drawing struct {
// contains filtered or unexported fields
}
func (d Drawing) AddChart(at AnchorType) (chart.Chart, Anchor)
AddChart adds an chart to a drawing, returning the chart and an anchor that can be used to position the chart within the sheet.
func (d Drawing) AddImage(img common.ImageRef, at AnchorType) Anchor
AddImage adds an image with a paricular anchor type, returning an anchor to allow adusting the image size/position.
func (d Drawing) X() *sd.WsDr
X returns the inner wrapped XML type.
type Fill struct {
// contains filtered or unexported fields
}
func (f Fill) Index() uint32
func (f Fill) SetPatternFill() PatternFill
type Fills struct {
// contains filtered or unexported fields
}
func NewFills() Fills
func (f Fills) AddFill() Fill
AddFill creates a new empty Fill style.
func (f Fills) X() *sml.CT_Fills
Font allows editing fonts within a spreadsheet stylesheet.
type Font struct {
// contains filtered or unexported fields
}
func (f Font) Index() uint32
func (f Font) SetBold(b bool)
func (f Font) SetColor(c color.Color)
func (f Font) SetItalic(b bool)
func (f Font) SetName(name string)
func (f Font) SetSize(size float64)
func (f Font) X() *sml.CT_Font
X returns the inner wrapped XML type.
IconScale maps values to icons.
type IconScale struct {
// contains filtered or unexported fields
}
func (c IconScale) AddFormatValue(t sml.ST_CfvoType, val string)
AddFormatValue adds a format value to be used in determining which icons to display.
func (c IconScale) SetIcons(t sml.ST_IconSetType)
SetIcons sets the icon set to use for display.
func (c IconScale) X() *sml.CT_IconSet
X returns the inner wrapped XML type.
type MergedCell struct {
// contains filtered or unexported fields
}
func (s MergedCell) Cell() Cell
Cell returns the actual cell behind the merged region
func (s MergedCell) Reference() string
Reference returns the region of cells that are merged.
func (s MergedCell) SetReference(ref string)
SetReference sets the regin of cells that the merged cell applies to.
func (s MergedCell) X() *sml.CT_MergeCell
X returns the inner wrapped XML type.
NumberFormat is a number formatting string that can be applied to a cell style.
type NumberFormat struct {
// contains filtered or unexported fields
}
func CreateDefaultNumberFormat(id StandardFormat) NumberFormat
func (n NumberFormat) GetFormat() string
GetFormat sets the number format code.
func (n NumberFormat) ID() uint32
ID returns the number format ID. This is not an index as there are some predefined number formats which can be used in cell styles and don't need a corresponding NumberFormat.
func (n NumberFormat) SetFormat(f string)
SetFormat sets the number format code.
func (n NumberFormat) X() *sml.CT_NumFmt
X returns the inner wrapped XML type.
OneCellAnchor is anchored to a top-left cell with a fixed with/height in distance.
type OneCellAnchor struct {
// contains filtered or unexported fields
}
func (o OneCellAnchor) BottomRight() CellMarker
BottomRight is a no-op.
func (o OneCellAnchor) MoveTo(col, row int32)
MoveTo moves the top-left of the anchored object.
func (o OneCellAnchor) SetColOffset(m measurement.Distance)
SetColOffset sets the column offset of the top-left anchor.
func (o OneCellAnchor) SetHeight(h measurement.Distance)
SetHeight sets the height of the anchored object.
func (o OneCellAnchor) SetHeightCells(int32)
SetHeightCells is a no-op.
func (o OneCellAnchor) SetRowOffset(m measurement.Distance)
SetRowOffset sets the row offset of the top-left anchor.
func (o OneCellAnchor) SetWidth(w measurement.Distance)
SetWidth sets the width of the anchored object.
func (o OneCellAnchor) SetWidthCells(int32)
SetWidthCells is a no-op.
func (o OneCellAnchor) TopLeft() CellMarker
TopLeft returns the top-left corner of the anchored object.
func (o OneCellAnchor) Type() AnchorType
Type returns the type of anchor
type PatternFill struct {
// contains filtered or unexported fields
}
func NewPatternFill(fills *sml.CT_Fills) PatternFill
func (f PatternFill) ClearBgColor()
func (f PatternFill) ClearFgColor()
func (f PatternFill) SetBgColor(c color.Color)
func (f PatternFill) SetFgColor(c color.Color)
SetFgColor sets the *fill* foreground color. As an example, the solid pattern foreground color becomes the background color of the cell when applied.
func (f PatternFill) SetPattern(p sml.ST_PatternType)
SetPattern sets the pattern of the fill.
func (f PatternFill) X() *sml.CT_PatternFill
RichText is a container for the rich text within a cell. It's similar to a paragaraph for a document, except a cell can only contain one rich text item.
type RichText struct {
// contains filtered or unexported fields
}
func (r RichText) AddRun() RichTextRun
AddRun adds a new run of text to the cell.
func (r RichText) X() *sml.CT_Rst
X returns the inner wrapped XML type.
RichTextRun is a segment of text within a cell that is directly formatted.
type RichTextRun struct {
// contains filtered or unexported fields
}
func (r RichTextRun) SetBold(b bool)
SetBold causes the text to be displayed in bold.
func (r RichTextRun) SetColor(c color.Color)
SetColor sets the text color.
func (r RichTextRun) SetFont(s string)
SetFont sets the font name for a rich text run.
func (r RichTextRun) SetItalic(b bool)
SetItalic causes the text to be displayed in italic.
func (r RichTextRun) SetSize(m measurement.Distance)
SetSize sets the text size for a rich text run.
func (r RichTextRun) SetText(s string)
SetText sets the text to be displayed.
func (r RichTextRun) SetUnderline(u sml.ST_UnderlineValues)
SetUnderline controls if the run is underlined.
func (r RichTextRun) X() *sml.CT_RElt
X returns the inner wrapped XML type.
Row is a row within a spreadsheet.
type Row struct {
// contains filtered or unexported fields
}
func (r Row) AddCell() Cell
AddCell adds a cell to a spreadsheet.
func (r Row) AddNamedCell(col string) Cell
AddNamedCell adds a new named cell to a row and returns it. You should normally prefer Cell() as it will return the existing cell if the cell already exists, while AddNamedCell will duplicate the cell creating an invaild spreadsheet.
func (r Row) Cell(col string) Cell
Cell retrieves or adds a new cell to a row. Col is the column (e.g. 'A', 'B')
func (r Row) Cells() []Cell
Cells returns a slice of cells. The cells can be manipulated, but appending to the slice will have no effect.
func (r Row) CellsWithEmpty(lastColIdx uint32) []Cell
CellsWithEmpty returns a slice of cells including empty ones from the first column to the last one used in the sheet. The cells can be manipulated, but appending to the slice will have no effect.
func (r Row) IsHidden() bool
IsHidden returns whether the row is hidden or not.
func (r Row) RowNumber() uint32
RowNumber returns the row number (1-N), or zero if it is unset.
func (r Row) SetHeight(d measurement.Distance)
SetHeight sets the row height in points.
func (r Row) SetHeightAuto()
SetHeightAuto sets the row height to be automatically determined.
func (r Row) SetHidden(hidden bool)
SetHidden hides or unhides the row
func (r Row) X() *sml.CT_Row
X returns the inner wrapped XML type.
SharedStrings is a shared strings table, where string data can be placed outside of the sheet contents and referenced from a sheet.
type SharedStrings struct {
// contains filtered or unexported fields
}
func NewSharedStrings() SharedStrings
NewSharedStrings constructs a new Shared Strings table.
func (s SharedStrings) AddString(v string) int
AddString adds a string to the shared string cache.
func (s SharedStrings) GetString(id int) (string, error)
GetString retrieves a string from the shared strings table by index.
func (s SharedStrings) X() *sml.Sst
X returns the inner wrapped XML type.
Sheet is a single sheet within a workbook.
type Sheet struct {
// contains filtered or unexported fields
}
func (s *Sheet) AddConditionalFormatting(cellRanges []string) ConditionalFormatting
AddConditionalFormatting adds conditional formatting to the sheet.
func (s *Sheet) AddDataValidation() DataValidation
AddDataValidation adds a data validation rule to a sheet.
func (s *Sheet) AddHyperlink(url string) common.Hyperlink
AddHyperlink adds a hyperlink to a sheet. Adding the hyperlink to the sheet and setting it on a cell is more efficient than setting hyperlinks directly on a cell.
func (s *Sheet) AddMergedCells(fromRef, toRef string) MergedCell
AddMergedCells merges cells within a sheet.
func (s *Sheet) AddNumberedRow(rowNum uint32) Row
AddNumberedRow adds a row with a given row number. If you reuse a row number the resulting file will fail validation and fail to open in Office programs. Use Row instead which creates a new row or returns an existing row.
func (s *Sheet) AddRow() Row
AddRow adds a new row to a sheet. You can mix this with numbered rows, however it will get confusing. You should prefer to use either automatically numbered rows with AddRow or manually numbered rows with Row/AddNumberedRow
func (s *Sheet) AddView() SheetView
AddView adds a sheet view.
func (s *Sheet) Cell(cellRef string) Cell
Cell creates or returns a cell given a cell reference of the form 'A10'
func (s *Sheet) ClearAutoFilter()
ClearAutoFilter removes the autofilters from the sheet.
func (s *Sheet) ClearCachedFormulaResults()
ClearCachedFormulaResults clears any computed formula values that are stored in the sheet. This may be required if you modify cells that are used as a formula input to force the formulas to be recomputed the next time the sheet is opened in Excel.
func (s *Sheet) ClearProtection()
ClearProtection removes any protections applied to teh sheet.
func (s *Sheet) ClearSheetViews()
ClearSheetViews clears the list of sheet views. This will clear the results of AddView() or SetFrozen.
func (s *Sheet) Column(idx uint32) Column
Column returns or creates a column that with a given index (1-N). Columns can span multiple column indices, this method will return the column that applies to a column index if it exists or create a new column that only applies to the index passed in otherwise.
func (s *Sheet) Comments() Comments
Comments returns the comments for a sheet.
func (s Sheet) Extents() string
Extents returns the sheet extents in the form "A1:B15". This requires scanning the entire sheet.
func (s Sheet) ExtentsIndex() (string, uint32, string, uint32)
func (s *Sheet) ExtractText() *SheetText
ExtractText returns text from the sheet as a SheetText object.
func (s *Sheet) FormulaContext() formula.Context
FormulaContext returns a formula evaluation context that can be used to evaluate formaulas.
func (s *Sheet) GetDrawing() (*spreadsheetDrawing.WsDr, common.Relationships)
GetDrawing return the worksheet drawing and its relationships if exists.
func (s *Sheet) InitialView() SheetView
InitialView returns the first defined sheet view. If there are no views, one is created and returned.
func (s *Sheet) InsertRow(rowNum int) Row
InsertRow inserts a new row into a spreadsheet at a particular row number. This row will now be the row number specified, and any rows after it will be renumbed.
func (s Sheet) IsValid() bool
func (s Sheet) MaxColumnIdx() uint32
MaxColumnIdx returns the max used column of the sheet.
func (s *Sheet) MergedCells() []MergedCell
MergedCells returns the merged cell regions within the sheet.
func (s Sheet) Name() string
Name returns the sheet name
func (s *Sheet) Protection() SheetProtection
Protection controls the protection on an individual sheet.
func (s Sheet) RangeReference(n string) string
RangeReference converts a range reference of the form 'A1:A5' to 'Sheet 1'!$A$1:$A$5 . Renaming a sheet after calculating a range reference will invalidate the reference.
func (s *Sheet) RecalculateFormulas()
RecalculateFormulas re-computes any computed formula values that are stored in the sheet. As unioffice formula support is still new and not all functins are supported, if formula execution fails either due to a parse error or missing function, or erorr in the result (even if expected) the cached value will be left empty allowing Excel to recompute it on load.
func (s *Sheet) RemoveColumn(column string) error
RemoveColumn removes column from the sheet and moves all columns to the right of the removed column one step left.
func (s *Sheet) RemoveMergedCell(mc MergedCell)
RemoveMergedCell removes merging from a cell range within a sheet. The cells that made up the merged cell remain, but are no lon merged.
func (s *Sheet) Row(rowNum uint32) Row
Row will return a row with a given row number, creating a new row if necessary.
func (s *Sheet) Rows() []Row
Rows returns all of the rows in a sheet.
func (s *Sheet) SetAutoFilter(rangeRef string)
SetAutoFilter creates autofilters on the sheet. These are the automatic filters that are common for a header row. The RangeRef should be of the form "A1:C5" and cover the entire range of cells to be filtered, not just the header. SetAutoFilter replaces any existing auto filter on the sheet.
func (s *Sheet) SetBorder(cellRange string, border Border) error
SetBorder is a helper function for creating borders across multiple cells. In the OOXML spreadsheet format, a border applies to a single cell. To draw a 'boxed' border around multiple cells, you need to apply different styles to the cells on the top,left,right,bottom and four corners. This function breaks apart a single border into its components and applies it to cells as needed to give the effect of a border applying to multiple cells.
func (s *Sheet) SetDrawing(d Drawing)
SetDrawing sets the worksheet drawing. A worksheet can have a reference to a single drawing, but the drawing can have many charts.
func (s *Sheet) SetFrozen(firstRow, firstCol bool)
SetFrozen removes any existing sheet views and creates a new single view with either the first row, first column or both frozen.
func (s *Sheet) SetName(name string)
SetName sets the sheet name.
func (s *Sheet) SheetViews() []SheetView
SheetViews returns the sheet views defined. This is where splits and frozen rows/cols are configured. Multiple sheet views are allowed, but I'm not aware of there being a use for more than a single sheet view.
func (s *Sheet) Sort(column string, firstRow uint32, order SortOrder)
Sort sorts all of the rows within a sheet by the contents of a column. As the file format doesn't suppot indicating that a column should be sorted by the viewing/editing program, we actually need to reorder rows and change cell references during a sort. If the sheet contains formulas, you should call RecalculateFormulas() prior to sorting. The column is in the form "C" and specifies the column to sort by. The firstRow is a 1-based index and specifies the firstRow to include in the sort, allowing skipping over a header row.
func (s Sheet) Validate() error
Validate validates the sheet, returning an error if it is found to be invalid.
func (s Sheet) ValidateWithPath(path string) error
ValidateWithPath validates the sheet passing path informaton for a better error message
func (s *Sheet) Workbook() *Workbook
Workbook returns sheet's parent workbook.
func (s Sheet) X() *sml.Worksheet
X returns the inner wrapped XML type.
type SheetProtection struct {
// contains filtered or unexported fields
}
func (p SheetProtection) IsObjectLocked() bool
IsSheetLocked returns whether the sheet objects are locked.
func (p SheetProtection) IsSheetLocked() bool
IsSheetLocked returns whether the sheet is locked.
func (p SheetProtection) LockObject(b bool)
LockObject controls the locking of the sheet objects.
func (p SheetProtection) LockSheet(b bool)
LockSheet controls the locking of the sheet.
func (p SheetProtection) PasswordHash() string
PasswordHash returns the hash of the workbook password.
func (p SheetProtection) SetPassword(pw string)
SetPassword sets the password hash to a hash of the input password.
func (p SheetProtection) SetPasswordHash(pwHash string)
SetPasswordHash sets the password hash to the input.
func (p SheetProtection) X() *sml.CT_SheetProtection
X returns the inner wrapped XML type.
SheetText is an array of extracted text items which has some methods for representing extracted text from a sheet.
type SheetText struct { Cells []CellText }
func (st *SheetText) Text() string
Text returns text from the sheet as one string separated with line breaks.
SheetView is a view of a sheet. There is typically one per sheet, though more are supported.
type SheetView struct {
// contains filtered or unexported fields
}
func (s SheetView) SetShowRuler(b bool)
SetShowRuler controls the visibility of the ruler
func (s SheetView) SetState(st sml.ST_PaneState)
SetState sets the sheet view state (frozen/split/frozen-split)
func (s SheetView) SetTopLeft(cellRef string)
SetTopLeft sets the top left visible cell after the split.
func (s SheetView) SetXSplit(v float64)
SetXSplit sets the column split point
func (s SheetView) SetYSplit(v float64)
SetYSplit sets the row split point
func (s SheetView) SetZoom(pct uint32)
SetZoom controls the zoom level of the sheet and is measured in percent. The default value is 100.
func (s SheetView) X() *sml.CT_SheetView
X returns the inner wrapped XML type.
SortOrder is a column sort order.
type SortOrder byte
SortOrder constants
const ( SortOrderAscending SortOrder = iota SortOrderDescending )
func (i SortOrder) String() string
StandardFormat is a standard ECMA 376 number format.
type StandardFormat uint32
StandardFormat constants, extracted from ECMA-376 Part 1 Section 18.8.30
const ( StandardFormatGeneral StandardFormat = 0 // General StandardFormat0 StandardFormat = 0 // General StandardFormatWholeNumber StandardFormat = 1 // 0 StandardFormat1 StandardFormat = 1 // 0 StandardFormat2 StandardFormat = 2 // 0.00 StandardFormat3 StandardFormat = 3 // #,##0 StandardFormat4 StandardFormat = 4 // #,##0.00 StandardFormatPercent StandardFormat = 9 // 0% StandardFormat9 StandardFormat = 9 // 0% StandardFormat10 StandardFormat = 10 // 0.00% StandardFormat11 StandardFormat = 11 // 0.00E+00 StandardFormat12 StandardFormat = 12 // # ?/? StandardFormat13 StandardFormat = 13 // # ??/?? StandardFormatDate StandardFormat = 14 // m/d/yy StandardFormat14 StandardFormat = 14 // m/d/yy StandardFormat15 StandardFormat = 15 // d-mmm-yy StandardFormat16 StandardFormat = 16 // d-mmm StandardFormat17 StandardFormat = 17 // mmm-yy StandardFormat18 StandardFormat = 18 // h:mm AM/PM StandardFormatTime StandardFormat = 19 // h:mm:ss AM/PM StandardFormat19 StandardFormat = 19 // h:mm:ss AM/PM StandardFormat20 StandardFormat = 20 // h:mm StandardFormat21 StandardFormat = 21 // h:mm:ss StandardFormatDateTime StandardFormat = 22 // m/d/yy h:mm StandardFormat22 StandardFormat = 22 // m/d/yy h:mm StandardFormat37 StandardFormat = 37 // #,##0 ;(#,##0) StandardFormat38 StandardFormat = 38 // #,##0 ;[Red](#,##0) StandardFormat39 StandardFormat = 39 // #,##0.00;(#,##0.00) StandardFormat40 StandardFormat = 40 // #,##0.00;[Red](#,##0.00) StandardFormat45 StandardFormat = 45 // mm:ss StandardFormat46 StandardFormat = 46 // [h]:mm:ss StandardFormat47 StandardFormat = 47 // mm:ss.0 StandardFormat48 StandardFormat = 48 // ##0.0E+0 StandardFormat49 StandardFormat = 49 // @ )
func (i StandardFormat) String() string
StyleSheet is a document style sheet.
type StyleSheet struct {
// contains filtered or unexported fields
}
func NewStyleSheet(wb *Workbook) StyleSheet
NewStyleSheet constructs a new default stylesheet.
func (s StyleSheet) AddBorder() Border
AddBorder creates a new empty Border style.
func (s StyleSheet) AddCellStyle() CellStyle
AddCellStyle creates a new empty cell style.
func (s StyleSheet) AddDifferentialStyle() DifferentialStyle
AddDifferentialStyle adds a new empty differential cell style to the stylesheet.
func (s StyleSheet) AddFont() Font
AddFont creates a new empty Font style.
func (s StyleSheet) AddNumberFormat() NumberFormat
AddNumberFormat adds a new blank number format to the stylesheet.
func (s StyleSheet) Borders() []Border
Borders returns the list of borders defined in the stylesheet.
func (s StyleSheet) CellStyles() []CellStyle
CellStyles returns the list of defined cell styles
func (s StyleSheet) Fills() Fills
Fills returns a Fills object that can be used to add/create/edit fills.
func (s StyleSheet) Fonts() []Font
Fonts returns the list of fonts defined in the stylesheet.
func (s StyleSheet) GetCellStyle(id uint32) CellStyle
func (s StyleSheet) GetNumberFormat(id uint32) NumberFormat
func (s StyleSheet) GetOrCreateStandardNumberFormat(f StandardFormat) CellStyle
GetOrCreateStandardNumberFormat gets or creates a cell style with a given standard format. This should only be used when you want to perform number/date/time formatting only. Manipulating the style returned will cause all cells using style returned from this for a given format to be formatted.
func (s StyleSheet) RemoveFont(f Font) error
RemoveFont removes a font from the style sheet. It *does not* update styles that refer to this font.
func (s StyleSheet) X() *sml.StyleSheet
X returns the inner XML entity for a stylesheet.
type Table struct {
// contains filtered or unexported fields
}
func (t Table) Name() string
Name returns the name of the table
func (t Table) Reference() string
Reference returns the table reference (the cells within the table)
func (t Table) X() *sml.Table
X returns the inner wrapped XML type.
TwoCellAnchor is an anchor that is attached to a top-left cell with a fixed width/height in cells.
type TwoCellAnchor struct {
// contains filtered or unexported fields
}
func (t TwoCellAnchor) BottomRight() CellMarker
BottomRight returns the CellMaker for the bottom right corner of the anchor.
func (t TwoCellAnchor) MoveTo(col, row int32)
MoveTo repositions the anchor without changing the objects size.
func (t TwoCellAnchor) SetColOffset(m measurement.Distance)
SetColOffset sets the column offset of the two cell anchor.
func (t TwoCellAnchor) SetHeight(h measurement.Distance)
SetHeight is a nop-op.
func (t TwoCellAnchor) SetHeightCells(h int32)
SetHeightCells sets the height the anchored object by moving the bottom. It is not compatible with SetHeight.
func (t TwoCellAnchor) SetRowOffset(m measurement.Distance)
SetRowOffset sets the row offset of the two cell anchor
func (t TwoCellAnchor) SetWidth(w measurement.Distance)
SetWidth is a no-op.
func (t TwoCellAnchor) SetWidthCells(w int32)
SetWidthCells sets the height the anchored object by moving the right hand side. It is not compatible with SetWidth.
func (t TwoCellAnchor) TopLeft() CellMarker
TopLeft returns the CellMaker for the top left corner of the anchor.
func (t TwoCellAnchor) Type() AnchorType
Type returns the type of anchor
Workbook is the top level container item for a set of spreadsheets.
type Workbook struct { common.DocBase StyleSheet StyleSheet SharedStrings SharedStrings // contains filtered or unexported fields }
func New() *Workbook
New constructs a new workbook.
func Open(filename string) (*Workbook, error)
Open opens and reads a workbook from a file (.xlsx).
func Read(r io.ReaderAt, size int64) (*Workbook, error)
Read reads a workbook from an io.Reader(.xlsx).
func (wb *Workbook) AddDefinedName(name, ref string) DefinedName
AddDefinedName adds a name for a cell or range reference that can be used in formulas and charts.
func (wb *Workbook) AddDrawing() Drawing
AddDrawing adds a drawing to a workbook. However the drawing is not actually displayed or used until it's set on a sheet.
func (wb *Workbook) AddImage(i common.Image) (common.ImageRef, error)
AddImage adds an image to the workbook package, returning a reference that can be used to add the image to a drawing.
func (wb *Workbook) AddSheet() Sheet
AddSheet adds a new sheet to a workbook.
func (wb *Workbook) ClearCachedFormulaResults()
ClearCachedFormulaResults clears any computed formula values that are stored in the sheet. This may be required if you modify cells that are used as a formula input to force the formulas to be recomputed the next time the sheet is opened in Excel.
func (wb *Workbook) ClearProtection()
ClearProtection clears all workbook protections.
func (wb *Workbook) Close() error
Close closes the workbook, removing any temporary files that might have been created when opening a document.
func (wb *Workbook) CopySheet(ind int, copiedSheetName string) (Sheet, error)
CopySheet copies the existing sheet at index `ind` and puts its copy with the name `copiedSheetName`.
func (wb *Workbook) CopySheetByName(name, copiedSheetName string) (Sheet, error)
CopySheetByName copies the existing sheet with the name `name` and puts its copy with the name `copiedSheetName`.
func (wb *Workbook) DefinedNames() []DefinedName
DefinedNames returns a slice of all defined names in the workbook.
func (wb *Workbook) Epoch() time.Time
Epoch returns the point at which the dates/times in the workbook are relative to.
func (wb *Workbook) ExtractText() *WorkbookText
ExtractText returns text from the workbook as a WorkbookText object.
func (wb *Workbook) GetChartByTargetId(targetAttr string) *crt.ChartSpace
GetChartByTargetId returns the array of workbook crt.ChartSpace.
func (wb *Workbook) GetFilename() string
GetFilename returns the name of file from which workbook was opened with full path to it
func (wb *Workbook) GetSheet(name string) (Sheet, error)
GetSheet returns a sheet by name, or an error if a sheet by the given name was not found.
func (wb *Workbook) Protection() WorkbookProtection
Protection allows control over the workbook protections.
func (wb *Workbook) RecalculateFormulas()
RecalculateFormulas re-computes any computed formula values that are stored in the sheet. As unioffice formula support is still new and not all functins are supported, if formula execution fails either due to a parse error or missing function, or erorr in the result (even if expected) the cached value will be left empty allowing Excel to recompute it on load.
func (wb *Workbook) RemoveCalcChain()
RemoveCalcChain removes the cached caculation chain. This is sometimes needed as we don't update it when rows are added/removed.
func (wb *Workbook) RemoveDefinedName(dn DefinedName) error
RemoveDefinedName removes an existing defined name.
func (wb *Workbook) RemoveSheet(ind int) error
RemoveSheet removes the sheet with the given index from the workbook.
func (wb *Workbook) RemoveSheetByName(name string) error
RemoveSheetByName removes the sheet with the given name from the workbook.
func (wb *Workbook) Save(w io.Writer) error
Save writes the workbook out to a writer in the zipped xlsx format.
func (wb *Workbook) SaveToFile(path string) error
SaveToFile writes the workbook out to a file.
func (wb *Workbook) SetActiveSheet(s Sheet)
SetActiveSheet sets the active sheet which will be the tab displayed when the spreadsheet is initially opened.
func (wb *Workbook) SetActiveSheetIndex(idx uint32)
SetActiveSheetIndex sets the index of the active sheet (0-n) which will be the tab displayed when the spreadsheet is initially opened.
func (wb Workbook) SheetCount() int
SheetCount returns the number of sheets in the workbook.
func (wb *Workbook) Sheets() []Sheet
Sheets returns the sheets from the workbook.
func (wb *Workbook) Tables() []Table
Tables returns a slice of all defined tables in the workbook.
func (wb *Workbook) Themes() []*dml.Theme
Themes returns the array of workbook dml.Theme.
func (wb *Workbook) Uses1904Dates() bool
Uses1904Dates returns true if the the workbook uses dates relative to 1 Jan 1904. This is uncommon.
func (wb *Workbook) Validate() error
Validate attempts to validate the structure of a workbook.
func (wb *Workbook) X() *sml.Workbook
X returns the inner wrapped XML type.
type WorkbookProtection struct {
// contains filtered or unexported fields
}
func (p WorkbookProtection) IsStructureLocked() bool
IsStructureLocked returns whether the workbook structure is locked.
func (p WorkbookProtection) IsWindowLocked() bool
IsWindowLocked returns whether the workbook windows are locked.
func (p WorkbookProtection) LockStructure(b bool)
LockStructure controls the locking of the workbook structure.
func (p WorkbookProtection) LockWindow(b bool)
LockWindow controls the locking of the workbook windows.
func (p WorkbookProtection) PasswordHash() string
PasswordHash returns the hash of the workbook password.
func (p WorkbookProtection) SetPassword(pw string)
SetPassword sets the password hash to a hash of the input password.
func (p WorkbookProtection) SetPasswordHash(pwHash string)
SetPasswordHash sets the password hash to the input.
func (p WorkbookProtection) X() *sml.CT_WorkbookProtection
X returns the inner wrapped XML type.
WorkbookText is an array of extracted text items which has some methods for representing extracted text from a workbook.
type WorkbookText struct { Sheets []*SheetText }
func (wbt *WorkbookText) Text() string
Text returns text from the workbook as one string separated with line breaks.
Name | Synopsis |
---|---|
.. | |
convert | |
format | Package format provides support for parsing and evaluating spreadsheetml/Excel number formats. |
formula | Package formula provides formula parsing and evaluation. |
reference | |
update | Package update contains definitions needed for updating references after removing rows/columns. |