rubyXL 3.3.33 → 3.4.25
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +60 -0
- data/Gemfile +9 -8
- data/Gemfile.lock +124 -0
- data/LICENSE.txt +1 -1
- data/README.rdoc +46 -22
- data/Rakefile +29 -29
- data/VERSION +1 -1
- data/lib/rubyXL/cell.rb +2 -29
- data/lib/rubyXL/convenience_methods/cell.rb +276 -0
- data/lib/rubyXL/convenience_methods/color.rb +156 -0
- data/lib/rubyXL/convenience_methods/font.rb +63 -0
- data/lib/rubyXL/convenience_methods/workbook.rb +141 -0
- data/lib/rubyXL/convenience_methods/worksheet.rb +714 -0
- data/lib/rubyXL/convenience_methods.rb +5 -1301
- data/lib/rubyXL/objects/border.rb +0 -3
- data/lib/rubyXL/objects/calculation_chain.rb +2 -2
- data/lib/rubyXL/objects/cell_style.rb +1 -3
- data/lib/rubyXL/objects/chartsheet.rb +8 -12
- data/lib/rubyXL/objects/color.rb +3 -7
- data/lib/rubyXL/objects/column_range.rb +0 -3
- data/lib/rubyXL/objects/comments.rb +1 -4
- data/lib/rubyXL/objects/connection.rb +175 -0
- data/lib/rubyXL/objects/container_nodes.rb +1 -5
- data/lib/rubyXL/objects/content_types.rb +3 -6
- data/lib/rubyXL/objects/data_validation.rb +2 -2
- data/lib/rubyXL/objects/document_properties.rb +11 -15
- data/lib/rubyXL/objects/extensions.rb +0 -2
- data/lib/rubyXL/objects/external_links.rb +30 -8
- data/lib/rubyXL/objects/fill.rb +2 -5
- data/lib/rubyXL/objects/filters.rb +5 -7
- data/lib/rubyXL/objects/font.rb +2 -7
- data/lib/rubyXL/objects/formula.rb +3 -5
- data/lib/rubyXL/objects/ooxml_object.rb +26 -19
- data/lib/rubyXL/objects/query_table.rb +104 -0
- data/lib/rubyXL/objects/reference.rb +6 -8
- data/lib/rubyXL/objects/relationships.rb +13 -13
- data/lib/rubyXL/objects/root.rb +0 -2
- data/lib/rubyXL/objects/shared_strings.rb +3 -6
- data/lib/rubyXL/objects/sheet_common.rb +1 -3
- data/lib/rubyXL/objects/sheet_data.rb +38 -11
- data/lib/rubyXL/objects/simple_types.rb +16 -1
- data/lib/rubyXL/objects/storage.rb +51 -50
- data/lib/rubyXL/objects/stylesheet.rb +8 -15
- data/lib/rubyXL/objects/text.rb +5 -7
- data/lib/rubyXL/objects/theme.rb +5 -8
- data/lib/rubyXL/objects/workbook.rb +140 -33
- data/lib/rubyXL/objects/worksheet.rb +44 -31
- data/lib/rubyXL/parser.rb +1 -3
- data/lib/rubyXL/worksheet.rb +83 -91
- data/lib/rubyXL.rb +1 -1
- data/rdoc/README_rdoc.html +111 -126
- data/rdoc/RubyXL/AExtension.html +20 -60
- data/rdoc/RubyXL/AExtensionStorageArea.html +11 -17
- data/rdoc/RubyXL/ActiveX.html +19 -47
- data/rdoc/RubyXL/ActiveXBinary.html +11 -22
- data/rdoc/RubyXL/AdjustHandleList.html +12 -19
- data/rdoc/RubyXL/Alignment.html +12 -19
- data/rdoc/RubyXL/AlternateContent.html +11 -17
- data/rdoc/RubyXL/Authors.html +12 -19
- data/rdoc/RubyXL/AutoFilter.html +12 -19
- data/rdoc/RubyXL/AutoFilterColumn.html +12 -19
- data/rdoc/RubyXL/BinaryImageFile.html +11 -25
- data/rdoc/RubyXL/BodyProperties.html +12 -19
- data/rdoc/RubyXL/BooleanNode.html +11 -17
- data/rdoc/RubyXL/BooleanValue.html +11 -17
- data/rdoc/RubyXL/Border.html +24 -84
- data/rdoc/RubyXL/BorderEdge.html +19 -52
- data/rdoc/RubyXL/Borders.html +18 -39
- data/rdoc/RubyXL/Break.html +12 -19
- data/rdoc/RubyXL/BreakList.html +12 -19
- data/rdoc/RubyXL/CT_AdjPoint2D.html +12 -19
- data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +12 -19
- data/rdoc/RubyXL/CT_AlphaModulateEffect.html +12 -19
- data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +12 -19
- data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +12 -19
- data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +12 -19
- data/rdoc/RubyXL/CT_Backdrop.html +12 -19
- data/rdoc/RubyXL/CT_Bevel.html +12 -19
- data/rdoc/RubyXL/CT_BiLevelEffect.html +12 -19
- data/rdoc/RubyXL/CT_BlendEffect.html +12 -19
- data/rdoc/RubyXL/CT_Blip.html +12 -19
- data/rdoc/RubyXL/CT_BlipFillProperties.html +12 -19
- data/rdoc/RubyXL/CT_BlurEffect.html +12 -19
- data/rdoc/RubyXL/CT_Camera.html +12 -19
- data/rdoc/RubyXL/CT_Color.html +12 -19
- data/rdoc/RubyXL/CT_ColorChangeEffect.html +12 -19
- data/rdoc/RubyXL/CT_ColorMapping.html +12 -19
- data/rdoc/RubyXL/CT_ColorScheme.html +12 -19
- data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +12 -19
- data/rdoc/RubyXL/CT_ConnectionSite.html +12 -19
- data/rdoc/RubyXL/CT_ConnectionSiteList.html +12 -19
- data/rdoc/RubyXL/CT_DashStop.html +12 -19
- data/rdoc/RubyXL/CT_DashStopList.html +12 -19
- data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +12 -19
- data/rdoc/RubyXL/CT_DuotoneEffect.html +12 -19
- data/rdoc/RubyXL/CT_EffectContainer.html +12 -19
- data/rdoc/RubyXL/CT_EffectList.html +12 -19
- data/rdoc/RubyXL/CT_EffectReference.html +12 -19
- data/rdoc/RubyXL/CT_EffectStyleItem.html +12 -19
- data/rdoc/RubyXL/CT_EffectStyleList.html +12 -19
- data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +12 -19
- data/rdoc/RubyXL/CT_FillEffect.html +12 -19
- data/rdoc/RubyXL/CT_FillOverlayEffect.html +12 -19
- data/rdoc/RubyXL/CT_FillStyleList.html +12 -19
- data/rdoc/RubyXL/CT_FlatText.html +12 -19
- data/rdoc/RubyXL/CT_FontCollection.html +12 -19
- data/rdoc/RubyXL/CT_FontReference.html +12 -19
- data/rdoc/RubyXL/CT_GeomGuideList.html +12 -19
- data/rdoc/RubyXL/CT_GlowEffect.html +12 -19
- data/rdoc/RubyXL/CT_GradientFillProperties.html +12 -19
- data/rdoc/RubyXL/CT_GradientStop.html +12 -19
- data/rdoc/RubyXL/CT_GradientStopList.html +12 -19
- data/rdoc/RubyXL/CT_HSLEffect.html +12 -19
- data/rdoc/RubyXL/CT_HslColor.html +12 -19
- data/rdoc/RubyXL/CT_Hyperlink.html +12 -19
- data/rdoc/RubyXL/CT_InnerShadowEffect.html +12 -19
- data/rdoc/RubyXL/CT_LightRig.html +12 -19
- data/rdoc/RubyXL/CT_LineEndProperties.html +12 -19
- data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +12 -19
- data/rdoc/RubyXL/CT_LineProperties.html +12 -19
- data/rdoc/RubyXL/CT_LineStyleList.html +12 -19
- data/rdoc/RubyXL/CT_LinearShadeProperties.html +12 -19
- data/rdoc/RubyXL/CT_LuminanceEffect.html +12 -19
- data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +12 -19
- data/rdoc/RubyXL/CT_OuterShadowEffect.html +12 -19
- data/rdoc/RubyXL/CT_Path2D.html +12 -19
- data/rdoc/RubyXL/CT_Path2DArcTo.html +12 -19
- data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +12 -19
- data/rdoc/RubyXL/CT_Path2DList.html +12 -19
- data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +12 -19
- data/rdoc/RubyXL/CT_Path2DTo.html +12 -19
- data/rdoc/RubyXL/CT_PathShadeProperties.html +12 -19
- data/rdoc/RubyXL/CT_PatternFillProperties.html +12 -19
- data/rdoc/RubyXL/CT_Point3D.html +12 -19
- data/rdoc/RubyXL/CT_PolarAdjustHandle.html +12 -19
- data/rdoc/RubyXL/CT_PresetColor.html +12 -19
- data/rdoc/RubyXL/CT_PresetLineDashProperties.html +12 -19
- data/rdoc/RubyXL/CT_PresetShadowEffect.html +12 -19
- data/rdoc/RubyXL/CT_PresetTextShape.html +12 -19
- data/rdoc/RubyXL/CT_ReflectionEffect.html +12 -19
- data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +12 -19
- data/rdoc/RubyXL/CT_RelativeRect.html +12 -19
- data/rdoc/RubyXL/CT_SRgbColor.html +12 -19
- data/rdoc/RubyXL/CT_ScRgbColor.html +12 -19
- data/rdoc/RubyXL/CT_Scene3D.html +12 -19
- data/rdoc/RubyXL/CT_SchemeColor.html +12 -19
- data/rdoc/RubyXL/CT_Shape3D.html +12 -19
- data/rdoc/RubyXL/CT_ShapeStyle.html +12 -19
- data/rdoc/RubyXL/CT_SoftEdgesEffect.html +12 -19
- data/rdoc/RubyXL/CT_SphereCoords.html +12 -19
- data/rdoc/RubyXL/CT_StretchInfoProperties.html +12 -19
- data/rdoc/RubyXL/CT_StyleMatrix.html +12 -19
- data/rdoc/RubyXL/CT_StyleMatrixReference.html +12 -19
- data/rdoc/RubyXL/CT_SupplementalFont.html +12 -19
- data/rdoc/RubyXL/CT_SystemColor.html +12 -19
- data/rdoc/RubyXL/CT_TextAutonumberBullet.html +12 -19
- data/rdoc/RubyXL/CT_TextBlipBullet.html +12 -19
- data/rdoc/RubyXL/CT_TextCharBullet.html +12 -19
- data/rdoc/RubyXL/CT_TextCharacterProperties.html +12 -19
- data/rdoc/RubyXL/CT_TextFont.html +12 -19
- data/rdoc/RubyXL/CT_TextListStyle.html +12 -19
- data/rdoc/RubyXL/CT_TextNormalAutofit.html +12 -19
- data/rdoc/RubyXL/CT_TextParagraphProperties.html +12 -19
- data/rdoc/RubyXL/CT_TextSpacing.html +12 -19
- data/rdoc/RubyXL/CT_TextTabStop.html +12 -19
- data/rdoc/RubyXL/CT_TextTabStopList.html +12 -19
- data/rdoc/RubyXL/CT_TileInfoProperties.html +12 -19
- data/rdoc/RubyXL/CT_TintEffect.html +12 -19
- data/rdoc/RubyXL/CT_Transform2D.html +12 -19
- data/rdoc/RubyXL/CT_TransformEffect.html +12 -19
- data/rdoc/RubyXL/CT_Vector3D.html +12 -19
- data/rdoc/RubyXL/CT_XYAdjustHandle.html +12 -19
- data/rdoc/RubyXL/CalculationChain.html +16 -45
- data/rdoc/RubyXL/CalculationChainCell.html +12 -19
- data/rdoc/RubyXL/CalculationProperties.html +12 -19
- data/rdoc/RubyXL/Cell.html +133 -209
- data/rdoc/RubyXL/CellConvenienceMethods.html +168 -522
- data/rdoc/RubyXL/CellExt.html +12 -19
- data/rdoc/RubyXL/CellSmartTag.html +12 -19
- data/rdoc/RubyXL/CellSmartTagProperty.html +12 -19
- data/rdoc/RubyXL/CellSmartTags.html +12 -19
- data/rdoc/RubyXL/CellStyle.html +12 -19
- data/rdoc/RubyXL/CellStyleXFs.html +18 -39
- data/rdoc/RubyXL/CellStyles.html +18 -39
- data/rdoc/RubyXL/CellValue.html +17 -38
- data/rdoc/RubyXL/CellWatch.html +12 -19
- data/rdoc/RubyXL/CellWatches.html +12 -19
- data/rdoc/RubyXL/CellXFs.html +19 -42
- data/rdoc/RubyXL/ChartColorsFile.html +11 -25
- data/rdoc/RubyXL/ChartFile.html +18 -49
- data/rdoc/RubyXL/ChartStyleFile.html +11 -25
- data/rdoc/RubyXL/ChartUserShapesFile.html +11 -25
- data/rdoc/RubyXL/Chartsheet.html +19 -68
- data/rdoc/RubyXL/ChartsheetPageSetup.html +12 -19
- data/rdoc/RubyXL/ChartsheetProperties.html +12 -19
- data/rdoc/RubyXL/ChartsheetProtection.html +12 -19
- data/rdoc/RubyXL/ChartsheetView.html +12 -19
- data/rdoc/RubyXL/ChartsheetViews.html +12 -19
- data/rdoc/RubyXL/Color.html +18 -55
- data/rdoc/RubyXL/ColorConvenienceClasses/HlsColor.html +18 -65
- data/rdoc/RubyXL/ColorConvenienceClasses/RgbColor.html +28 -88
- data/rdoc/RubyXL/ColorConvenienceClasses.html +9 -14
- data/rdoc/RubyXL/ColorConvenienceMethods.html +14 -33
- data/rdoc/RubyXL/ColorFilter.html +12 -19
- data/rdoc/RubyXL/ColorScale.html +12 -19
- data/rdoc/RubyXL/ColorSet.html +12 -19
- data/rdoc/RubyXL/Colors.html +12 -19
- data/rdoc/RubyXL/ColumnRange.html +22 -74
- data/rdoc/RubyXL/ColumnRanges.html +23 -83
- data/rdoc/RubyXL/Comment.html +12 -19
- data/rdoc/RubyXL/CommentList.html +12 -19
- data/rdoc/RubyXL/CommentsFile.html +17 -51
- data/rdoc/RubyXL/ConditionalFormatValue.html +12 -19
- data/rdoc/RubyXL/ConditionalFormatting.html +12 -19
- data/rdoc/RubyXL/ConditionalFormattingRule.html +12 -19
- data/rdoc/RubyXL/Connection.html +99 -0
- data/rdoc/RubyXL/ConnectionTable.html +99 -0
- data/rdoc/RubyXL/ConnectionTables.html +99 -0
- data/rdoc/RubyXL/ConnectionTextField.html +99 -0
- data/rdoc/RubyXL/ConnectionTextFields.html +99 -0
- data/rdoc/RubyXL/Connections.html +147 -0
- data/rdoc/RubyXL/ContentTypeDefault.html +11 -17
- data/rdoc/RubyXL/ContentTypeOverride.html +11 -17
- data/rdoc/RubyXL/ContentTypes.html +22 -63
- data/rdoc/RubyXL/ControlPropertiesFile.html +13 -22
- data/rdoc/RubyXL/CorePropertiesFile.html +34 -171
- data/rdoc/RubyXL/CustomColor.html +12 -19
- data/rdoc/RubyXL/CustomColorList.html +12 -19
- data/rdoc/RubyXL/CustomFilter.html +12 -19
- data/rdoc/RubyXL/CustomFilters.html +12 -19
- data/rdoc/RubyXL/CustomGeometry.html +12 -19
- data/rdoc/RubyXL/CustomProperties.html +12 -19
- data/rdoc/RubyXL/CustomPropertiesFile.html +11 -25
- data/rdoc/RubyXL/CustomProperty.html +12 -19
- data/rdoc/RubyXL/CustomPropertyFile.html +11 -25
- data/rdoc/RubyXL/CustomSheetView.html +12 -19
- data/rdoc/RubyXL/CustomSheetViews.html +12 -19
- data/rdoc/RubyXL/CustomWorkbookView.html +12 -19
- data/rdoc/RubyXL/CustomWorkbookViews.html +12 -19
- data/rdoc/RubyXL/CustomXMLFile.html +11 -22
- data/rdoc/RubyXL/DXF.html +12 -19
- data/rdoc/RubyXL/DXFs.html +12 -19
- data/rdoc/RubyXL/DataBar.html +12 -19
- data/rdoc/RubyXL/DataConsolidate.html +12 -19
- data/rdoc/RubyXL/DataConsolidationReference.html +12 -19
- data/rdoc/RubyXL/DataConsolidationReferences.html +12 -19
- data/rdoc/RubyXL/DataType.html +10 -39
- data/rdoc/RubyXL/DataValidation.html +12 -19
- data/rdoc/RubyXL/DataValidations.html +12 -19
- data/rdoc/RubyXL/DateGroupItem.html +12 -19
- data/rdoc/RubyXL/DefinedName.html +12 -19
- data/rdoc/RubyXL/DefinedNameExt.html +12 -19
- data/rdoc/RubyXL/DefinedNames.html +12 -19
- data/rdoc/RubyXL/DefinedNamesExt.html +12 -19
- data/rdoc/RubyXL/DocumentPropertiesFile.html +21 -68
- data/rdoc/RubyXL/DrawingFile.html +18 -49
- data/rdoc/RubyXL/DynamicFilter.html +12 -19
- data/rdoc/RubyXL/EmbeddedControl.html +12 -19
- data/rdoc/RubyXL/EmbeddedControls.html +12 -19
- data/rdoc/RubyXL/Extension.html +12 -19
- data/rdoc/RubyXL/ExtensionStorageArea.html +12 -19
- data/rdoc/RubyXL/Extents.html +12 -19
- data/rdoc/RubyXL/ExternalBook.html +12 -19
- data/rdoc/RubyXL/ExternalLinksFile.html +18 -49
- data/rdoc/RubyXL/ExternalReference.html +12 -19
- data/rdoc/RubyXL/ExternalReferences.html +12 -19
- data/rdoc/RubyXL/ExtraColorSchemeList.html +12 -19
- data/rdoc/RubyXL/FieldItem.html +12 -19
- data/rdoc/RubyXL/FileRecoveryProperties.html +12 -19
- data/rdoc/RubyXL/FileSharing.html +12 -19
- data/rdoc/RubyXL/FileVersion.html +12 -19
- data/rdoc/RubyXL/Fill.html +18 -39
- data/rdoc/RubyXL/Fills.html +18 -39
- data/rdoc/RubyXL/FilterContainer.html +12 -19
- data/rdoc/RubyXL/FloatNode.html +11 -17
- data/rdoc/RubyXL/FloatValue.html +11 -17
- data/rdoc/RubyXL/Font.html +21 -59
- data/rdoc/RubyXL/FontConvenienceMethods.html +48 -237
- data/rdoc/RubyXL/FontScheme.html +12 -19
- data/rdoc/RubyXL/Fonts.html +18 -39
- data/rdoc/RubyXL/Formula.html +12 -19
- data/rdoc/RubyXL/FunctionGroup.html +12 -19
- data/rdoc/RubyXL/FunctionGroups.html +12 -19
- data/rdoc/RubyXL/GenericStorageObject.html +21 -84
- data/rdoc/RubyXL/GradientFill.html +12 -19
- data/rdoc/RubyXL/HeaderFooterSettings.html +12 -19
- data/rdoc/RubyXL/Hyperlink.html +12 -19
- data/rdoc/RubyXL/HyperlinkRelFile.html +11 -22
- data/rdoc/RubyXL/Hyperlinks.html +12 -19
- data/rdoc/RubyXL/IconFilter.html +12 -19
- data/rdoc/RubyXL/IconSet.html +12 -19
- data/rdoc/RubyXL/IgnoredError.html +12 -19
- data/rdoc/RubyXL/IgnoredErrors.html +12 -19
- data/rdoc/RubyXL/IndexedColors.html +12 -19
- data/rdoc/RubyXL/InputCells.html +12 -19
- data/rdoc/RubyXL/IntegerNode.html +11 -17
- data/rdoc/RubyXL/IntegerValue.html +11 -17
- data/rdoc/RubyXL/LegacyCell.html +13 -66
- data/rdoc/RubyXL/LegacyWorksheet.html +25 -99
- data/rdoc/RubyXL/MRUColors.html +12 -19
- data/rdoc/RubyXL/MacrosFile.html +11 -25
- data/rdoc/RubyXL/MergedCell.html +12 -19
- data/rdoc/RubyXL/MergedCells.html +12 -19
- data/rdoc/RubyXL/NumFmt.html +12 -19
- data/rdoc/RubyXL/NumberFormat.html +18 -39
- data/rdoc/RubyXL/NumberFormats.html +18 -45
- data/rdoc/RubyXL/OLEObject.html +12 -19
- data/rdoc/RubyXL/OLEObjectFile.html +11 -25
- data/rdoc/RubyXL/OLEObjects.html +12 -19
- data/rdoc/RubyXL/OLESize.html +12 -19
- data/rdoc/RubyXL/OOXMLContainerObject.html +35 -132
- data/rdoc/RubyXL/OOXMLIgnored.html +19 -53
- data/rdoc/RubyXL/OOXMLObject.html +14 -25
- data/rdoc/RubyXL/OOXMLObjectClassMethods.html +91 -183
- data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +48 -185
- data/rdoc/RubyXL/OOXMLRelationshipsFile.html +47 -200
- data/rdoc/RubyXL/OOXMLTopLevelObject.html +36 -133
- data/rdoc/RubyXL/OdbcOleDbProperties.html +99 -0
- data/rdoc/RubyXL/Offset.html +12 -19
- data/rdoc/RubyXL/OlapProperties.html +99 -0
- data/rdoc/RubyXL/OleItem.html +99 -0
- data/rdoc/RubyXL/OleItems.html +99 -0
- data/rdoc/RubyXL/OleLink.html +99 -0
- data/rdoc/RubyXL/OutlineProperties.html +12 -19
- data/rdoc/RubyXL/PageMargins.html +12 -19
- data/rdoc/RubyXL/PageSetup.html +12 -19
- data/rdoc/RubyXL/PageSetupProperties.html +12 -19
- data/rdoc/RubyXL/Pane.html +12 -19
- data/rdoc/RubyXL/Parser.html +22 -56
- data/rdoc/RubyXL/PatternFill.html +12 -19
- data/rdoc/RubyXL/PhoneticProperties.html +12 -19
- data/rdoc/RubyXL/PhoneticRun.html +12 -19
- data/rdoc/RubyXL/PivotArea.html +12 -19
- data/rdoc/RubyXL/PivotCache.html +12 -19
- data/rdoc/RubyXL/PivotCacheDefinitionFile.html +13 -30
- data/rdoc/RubyXL/PivotCacheRecordsFile.html +11 -25
- data/rdoc/RubyXL/PivotCaches.html +12 -19
- data/rdoc/RubyXL/PivotReference.html +12 -19
- data/rdoc/RubyXL/PivotReferences.html +12 -19
- data/rdoc/RubyXL/PivotTableFile.html +13 -30
- data/rdoc/RubyXL/PivotTableSelection.html +12 -19
- data/rdoc/RubyXL/PresetGeometry.html +12 -19
- data/rdoc/RubyXL/PrintOptions.html +12 -19
- data/rdoc/RubyXL/PrinterSettingsFile.html +11 -25
- data/rdoc/RubyXL/ProtectedRange.html +12 -19
- data/rdoc/RubyXL/ProtectedRanges.html +12 -19
- data/rdoc/RubyXL/Protection.html +12 -19
- data/rdoc/RubyXL/QueryParameter.html +99 -0
- data/rdoc/RubyXL/QueryParameters.html +99 -0
- data/rdoc/RubyXL/QueryTable.html +155 -0
- data/rdoc/RubyXL/QueryTableDeletedField.html +99 -0
- data/rdoc/RubyXL/QueryTableDeletedFields.html +99 -0
- data/rdoc/RubyXL/QueryTableField.html +99 -0
- data/rdoc/RubyXL/QueryTableFields.html +99 -0
- data/rdoc/RubyXL/QueryTableRefresh.html +99 -0
- data/rdoc/RubyXL/RID.html +11 -17
- data/rdoc/RubyXL/RawOOXML.html +20 -60
- data/rdoc/RubyXL/Reference.html +62 -228
- data/rdoc/RubyXL/Relationship.html +11 -17
- data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +13 -32
- data/rdoc/RubyXL/RelationshipSupport.html +25 -120
- data/rdoc/RubyXL/RevisionPointer.html +12 -22
- data/rdoc/RubyXL/RichText.html +19 -39
- data/rdoc/RubyXL/RichTextRun.html +17 -38
- data/rdoc/RubyXL/Row.html +33 -168
- data/rdoc/RubyXL/RowExt.html +12 -19
- data/rdoc/RubyXL/RunProperties.html +12 -19
- data/rdoc/RubyXL/Scenario.html +12 -19
- data/rdoc/RubyXL/Scenarios.html +12 -19
- data/rdoc/RubyXL/Selection.html +16 -37
- data/rdoc/RubyXL/ShapeGuide.html +12 -19
- data/rdoc/RubyXL/ShapeTextRectangle.html +12 -19
- data/rdoc/RubyXL/SharedStringsTable.html +37 -147
- data/rdoc/RubyXL/Sheet.html +12 -19
- data/rdoc/RubyXL/SheetCalculationProperties.html +12 -19
- data/rdoc/RubyXL/SheetData.html +19 -53
- data/rdoc/RubyXL/SheetDataExt.html +12 -19
- data/rdoc/RubyXL/SheetDataSet.html +12 -19
- data/rdoc/RubyXL/SheetMetadata.html +108 -0
- data/rdoc/RubyXL/SheetName.html +12 -19
- data/rdoc/RubyXL/SheetNames.html +12 -19
- data/rdoc/RubyXL/Sheets.html +12 -19
- data/rdoc/RubyXL/SlicerCacheFile.html +11 -25
- data/rdoc/RubyXL/SlicerFile.html +11 -25
- data/rdoc/RubyXL/SmartTagProperties.html +12 -19
- data/rdoc/RubyXL/SmartTagType.html +12 -19
- data/rdoc/RubyXL/SmartTagTypes.html +12 -19
- data/rdoc/RubyXL/SmartTags.html +12 -19
- data/rdoc/RubyXL/SortCondition.html +12 -19
- data/rdoc/RubyXL/SortState.html +12 -19
- data/rdoc/RubyXL/Sqref.html +19 -53
- data/rdoc/RubyXL/Stop.html +12 -19
- data/rdoc/RubyXL/StringNode.html +11 -17
- data/rdoc/RubyXL/StringNodeW3C.html +20 -54
- data/rdoc/RubyXL/StringValue.html +11 -17
- data/rdoc/RubyXL/Stylesheet.html +34 -117
- data/rdoc/RubyXL/TableFile.html +11 -25
- data/rdoc/RubyXL/TableParts.html +11 -17
- data/rdoc/RubyXL/TableStyle.html +12 -19
- data/rdoc/RubyXL/TableStyles.html +12 -19
- data/rdoc/RubyXL/Text.html +22 -67
- data/rdoc/RubyXL/TextImportSettings.html +99 -0
- data/rdoc/RubyXL/Theme.html +19 -75
- data/rdoc/RubyXL/ThemeElements.html +12 -19
- data/rdoc/RubyXL/ThumbnailFile.html +11 -25
- data/rdoc/RubyXL/Top10.html +12 -19
- data/rdoc/RubyXL/VMLDrawingFile.html +14 -32
- data/rdoc/RubyXL/Variant.html +12 -19
- data/rdoc/RubyXL/Vector.html +17 -38
- data/rdoc/RubyXL/VectorValue.html +11 -17
- data/rdoc/RubyXL/VisualProperties.html +12 -19
- data/rdoc/RubyXL/WebPublishObject.html +12 -19
- data/rdoc/RubyXL/WebPublishObjects.html +12 -19
- data/rdoc/RubyXL/WebPublishingItem.html +12 -19
- data/rdoc/RubyXL/WebPublishingItems.html +12 -19
- data/rdoc/RubyXL/WebPublishingProperties.html +12 -19
- data/rdoc/RubyXL/WebQueryProperties.html +99 -0
- data/rdoc/RubyXL/Workbook.html +486 -227
- data/rdoc/RubyXL/WorkbookConvenienceMethods.html +130 -888
- data/rdoc/RubyXL/WorkbookProperties.html +12 -19
- data/rdoc/RubyXL/WorkbookProtection.html +12 -19
- data/rdoc/RubyXL/WorkbookRoot.html +27 -114
- data/rdoc/RubyXL/WorkbookView.html +12 -19
- data/rdoc/RubyXL/WorkbookViews.html +12 -19
- data/rdoc/RubyXL/Worksheet.html +92 -121
- data/rdoc/RubyXL/WorksheetConvenienceMethods.html +298 -1109
- data/rdoc/RubyXL/WorksheetDimensions.html +12 -19
- data/rdoc/RubyXL/WorksheetFormatProperties.html +11 -17
- data/rdoc/RubyXL/WorksheetProperties.html +12 -19
- data/rdoc/RubyXL/WorksheetProtection.html +12 -19
- data/rdoc/RubyXL/WorksheetView.html +12 -19
- data/rdoc/RubyXL/WorksheetViews.html +12 -19
- data/rdoc/RubyXL/XF.html +12 -19
- data/rdoc/RubyXL.html +39 -318
- data/rdoc/created.rid +45 -38
- data/rdoc/css/rdoc.css +55 -6
- data/rdoc/fonts/SourceCodePro-Bold.ttf +0 -0
- data/rdoc/fonts/SourceCodePro-Regular.ttf +0 -0
- data/rdoc/index.html +33 -373
- data/rdoc/js/darkfish.js +22 -99
- data/rdoc/js/navigation.js +4 -41
- data/rdoc/js/navigation.js.gz +0 -0
- data/rdoc/js/search.js +32 -31
- data/rdoc/js/search_index.js +1 -1
- data/rdoc/js/search_index.js.gz +0 -0
- data/rdoc/js/searcher.js +6 -6
- data/rdoc/js/searcher.js.gz +0 -0
- data/rdoc/table_of_contents.html +205 -45
- data/rubyXL.gemspec +53 -29
- data/spec/lib/cell_spec.rb +57 -6
- data/spec/lib/color_spec.rb +2 -1
- data/spec/lib/parser_spec.rb +24 -27
- data/spec/lib/reference_spec.rb +9 -3
- data/spec/lib/rgb_color_spec.rb +27 -0
- data/spec/lib/stylesheet_spec.rb +8 -11
- data/spec/lib/text_spec.rb +1 -5
- data/spec/lib/workbook_spec.rb +25 -4
- data/spec/lib/worksheet_spec.rb +873 -479
- data/spec/spec_helper.rb +2 -0
- data/test/test_parse_write.rb +15 -15
- metadata +54 -10
- data/rdoc/js/jquery.js +0 -4
data/rdoc/README_rdoc.html
CHANGED
@@ -4,21 +4,23 @@
|
|
4
4
|
<head>
|
5
5
|
<meta charset="UTF-8">
|
6
6
|
|
7
|
-
<title>README - rubyXL 3.
|
7
|
+
<title>README - rubyXL 3.4.25</title>
|
8
8
|
|
9
9
|
<script type="text/javascript">
|
10
10
|
var rdoc_rel_prefix = "./";
|
11
11
|
var index_rel_prefix = "./";
|
12
12
|
</script>
|
13
13
|
|
14
|
-
<script src="./js/
|
15
|
-
<script src="./js/
|
14
|
+
<script src="./js/navigation.js" defer></script>
|
15
|
+
<script src="./js/search.js" defer></script>
|
16
|
+
<script src="./js/search_index.js" defer></script>
|
17
|
+
<script src="./js/searcher.js" defer></script>
|
18
|
+
<script src="./js/darkfish.js" defer></script>
|
16
19
|
|
17
20
|
<link href="./css/fonts.css" rel="stylesheet">
|
18
21
|
<link href="./css/rdoc.css" rel="stylesheet">
|
19
22
|
|
20
23
|
|
21
|
-
|
22
24
|
<body id="top" role="document" class="file">
|
23
25
|
<nav role="navigation">
|
24
26
|
<div id="project-navigation">
|
@@ -59,6 +61,7 @@
|
|
59
61
|
<li><a href="#label-rubyXL">rubyXL</a>
|
60
62
|
<li><a href="#label-To+Install-3A">To Install:</a>
|
61
63
|
<li><a href="#label-To+Use-3A">To Use:</a>
|
64
|
+
<li><a href="#label-Convenience+methods">Convenience methods</a>
|
62
65
|
<li><a href="#label-Parsing+an+existing+workbook">Parsing an existing workbook</a>
|
63
66
|
<li><a href="#label-Creating+a+new+Workbook">Creating a new Workbook</a>
|
64
67
|
<li><a href="#label-Accessing">Accessing</a>
|
@@ -68,7 +71,6 @@
|
|
68
71
|
<li><a href="#label-Wrappers+for+accessing+Cell+properties">Wrappers for accessing Cell properties</a>
|
69
72
|
<li><a href="#label-Wrappers+for+accessing+Row+properties+">Wrappers for accessing Row properties </a>
|
70
73
|
<li><a href="#label-Accessing+column+properties">Accessing column properties</a>
|
71
|
-
<li><a href="#label-Table+reading">Table reading</a>
|
72
74
|
<li><a href="#label-Modifying">Modifying</a>
|
73
75
|
<li><a href="#label-Adding+Worksheets">Adding Worksheets</a>
|
74
76
|
<li><a href="#label-Renaming+Worksheets">Renaming Worksheets</a>
|
@@ -91,8 +93,11 @@
|
|
91
93
|
<li><a href="#label-Insert+Cell">Insert Cell</a>
|
92
94
|
<li><a href="#label-Delete+Cell">Delete Cell</a>
|
93
95
|
<li><a href="#label-Modifying+Cell+Format">Modifying Cell Format</a>
|
96
|
+
<li><a href="#label-Add+hyperlink+to+a+Cell">Add hyperlink to a Cell</a>
|
94
97
|
<li><a href="#label-I-2FO">I/O</a>
|
95
98
|
<li><a href="#label-Miscellaneous">Miscellaneous</a>
|
99
|
+
<li><a href="#label-Suppress+warnings+about+malformed+input+files">Suppress warnings about malformed input files</a>
|
100
|
+
<li><a href="#label-Data+validation+-28colloquially+referred+to+as+-22dropdown+list-22-29">Data validation (colloquially referred to as “dropdown list”)</a>
|
96
101
|
<li><a href="#label-For+more+information">For more information</a>
|
97
102
|
<li><a href="#label-Contributing+to+rubyXL">Contributing to rubyXL</a>
|
98
103
|
<li><a href="#label-Copyright">Copyright</a>
|
@@ -101,13 +106,12 @@
|
|
101
106
|
|
102
107
|
|
103
108
|
<div id="project-metadata">
|
104
|
-
|
109
|
+
|
110
|
+
<div id="fileindex-section" class="nav-section">
|
105
111
|
<h3>Pages</h3>
|
106
112
|
|
107
113
|
<ul class="link-list">
|
108
|
-
|
109
114
|
<li><a href="./README_rdoc.html">README</a>
|
110
|
-
|
111
115
|
</ul>
|
112
116
|
</div>
|
113
117
|
|
@@ -118,20 +122,11 @@
|
|
118
122
|
|
119
123
|
<h1 id="label-rubyXL">rubyXL<span><a href="#label-rubyXL">¶</a> <a href="#top">↑</a></span></h1>
|
120
124
|
|
121
|
-
<p><a href="http://badge.fury.io/rb/rubyXL"><img
|
122
|
-
src="https://badge.fury.io/rb/rubyXL.svg" alt="Gem Version" /></a> <a
|
123
|
-
href="https://codeclimate.com/github/weshatheleopard/rubyXL"><img
|
124
|
-
src="https://codeclimate.com/github/weshatheleopard/rubyXL.png" alt="Code
|
125
|
-
Climate" /></a></p>
|
125
|
+
<p><a href="http://badge.fury.io/rb/rubyXL"><img src="https://badge.fury.io/rb/rubyXL.svg" alt="Gem Version" /></a> <a href="https://codeclimate.com/github/weshatheleopard/rubyXL"><img src="https://codeclimate.com/github/weshatheleopard/rubyXL.png" alt="Code Climate" /></a> <a href="https://circleci.com/gh/weshatheleopard/rubyXL"><img src="https://circleci.com/gh/weshatheleopard/rubyXL.svg?style=svg" alt="CircleCI" /></a></p>
|
126
126
|
|
127
|
-
<p>This gem supports operating on <code>xlsx</code> files (Open XML format).
|
128
|
-
While it is capable of properly parsing the entire OOXML structure, its
|
129
|
-
current main emphasis is on reading files produced by MS Excel, making
|
130
|
-
minor modifications to them and saving them to be opened again, while
|
131
|
-
preserving as much of the structure as possible.</p>
|
127
|
+
<p>This gem supports operating on <code>xlsx</code> files (Open XML format). While it is capable of properly parsing the entire OOXML structure, its current main emphasis is on reading files produced by MS Excel, making minor modifications to them and saving them to be opened again, while preserving as much of the structure as possible.</p>
|
132
128
|
|
133
|
-
<p>Please note that proprietary binary <code>xls</code> format is
|
134
|
-
<strong>not</strong> supported.</p>
|
129
|
+
<p>Please note that proprietary binary <code>xls</code> format is <strong>not</strong> supported by this gem. If you need to parse those files, try <a href="https://github.com/zdavatz/spreadsheet">spreadsheet</a> gem.</p>
|
135
130
|
|
136
131
|
<h2 id="label-To+Install-3A">To Install:<span><a href="#label-To+Install-3A">¶</a> <a href="#top">↑</a></span></h2>
|
137
132
|
|
@@ -143,6 +138,22 @@ preserving as much of the structure as possible.</p>
|
|
143
138
|
<pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">'rubyXL'</span> <span class="ruby-comment"># Assuming rubygems is already required</span>
|
144
139
|
</pre>
|
145
140
|
|
141
|
+
<h3 id="label-Convenience+methods">Convenience methods<span><a href="#label-Convenience+methods">¶</a> <a href="#top">↑</a></span></h3>
|
142
|
+
|
143
|
+
<p>Starting with version 3.4.0, the main data structure has been separated from the convenience methods that provide access to individual features of the <code>xlsx</code> format, in order to decrease the memory footprint. If you intend to use these features, you will need to additionally include the respective files:</p>
|
144
|
+
|
145
|
+
<pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">'rubyXL/convenience_methods/cell'</span>
|
146
|
+
<span class="ruby-identifier">require</span> <span class="ruby-string">'rubyXL/convenience_methods/color'</span>
|
147
|
+
<span class="ruby-identifier">require</span> <span class="ruby-string">'rubyXL/convenience_methods/font'</span>
|
148
|
+
<span class="ruby-identifier">require</span> <span class="ruby-string">'rubyXL/convenience_methods/workbook'</span>
|
149
|
+
<span class="ruby-identifier">require</span> <span class="ruby-string">'rubyXL/convenience_methods/worksheet'</span>
|
150
|
+
</pre>
|
151
|
+
|
152
|
+
<p>If you do not care about your RAM usage, just include them all at once by adding the following line to your code so it can continue operating just as before:</p>
|
153
|
+
|
154
|
+
<pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">'rubyXL/convenience_methods'</span>
|
155
|
+
</pre>
|
156
|
+
|
146
157
|
<h3 id="label-Parsing+an+existing+workbook">Parsing an existing workbook<span><a href="#label-Parsing+an+existing+workbook">¶</a> <a href="#top">↑</a></span></h3>
|
147
158
|
|
148
159
|
<pre class="ruby"><span class="ruby-identifier">workbook</span> = <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Parser</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-string">"path/to/Excel/file.xlsx"</span>)
|
@@ -159,14 +170,12 @@ preserving as much of the structure as possible.</p>
|
|
159
170
|
|
160
171
|
<pre class="ruby"><span class="ruby-identifier">workbook</span>.<span class="ruby-identifier">worksheets</span>[<span class="ruby-value">0</span>] <span class="ruby-comment"># Returns first worksheet</span>
|
161
172
|
<span class="ruby-identifier">workbook</span>[<span class="ruby-value">0</span>] <span class="ruby-comment"># Returns first worksheet</span>
|
162
|
-
<span class="ruby-identifier">workbook</span>[<span class="ruby-string">'Sheet1'</span>] <span class="ruby-comment"># Finds and returns worksheet titled "Sheet1"
|
173
|
+
<span class="ruby-identifier">workbook</span>[<span class="ruby-string">'Sheet1'</span>] <span class="ruby-comment"># Finds and returns worksheet titled "Sheet1". Note that sheet names in Excel are limited to 31 character.</span>
|
163
174
|
</pre>
|
164
175
|
|
165
176
|
<h4 id="label-Accessing+a+Row+-28Array+of+Cells-29">Accessing a Row (Array of Cells)<span><a href="#label-Accessing+a+Row+-28Array+of+Cells-29">¶</a> <a href="#top">↑</a></span></h4>
|
166
177
|
|
167
|
-
<p>Please note that worksheet is a <em>sparse</em> array of rows. Your code
|
168
|
-
<strong>must</strong> expect that any row it plucks from the array may be
|
169
|
-
<code>nil</code>.</p>
|
178
|
+
<p>Please note that worksheet is a <em>sparse</em> array of rows. Your code <strong>must</strong> expect that any row it plucks from the array may be <code>nil</code>.</p>
|
170
179
|
|
171
180
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span> = <span class="ruby-identifier">workbook</span>[<span class="ruby-value">0</span>]
|
172
181
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>] <span class="ruby-comment"># Returns first row of the worksheet</span>
|
@@ -175,13 +184,20 @@ preserving as much of the structure as possible.</p>
|
|
175
184
|
|
176
185
|
<h4 id="label-Accessing+a+Cell+object">Accessing a Cell object<span><a href="#label-Accessing+a+Cell+object">¶</a> <a href="#top">↑</a></span></h4>
|
177
186
|
|
178
|
-
<p>Please note that row is a <em>sparse</em> array of cells. Your code
|
179
|
-
<strong>must</strong> expect that any cell it plucks from the array may be
|
180
|
-
<code>nil</code>.</p>
|
187
|
+
<p>Please note that row is a <em>sparse</em> array of cells. Your code <strong>must</strong> expect that any cell it plucks from the array may be <code>nil</code>.</p>
|
181
188
|
|
182
189
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span> = <span class="ruby-identifier">workbook</span>[<span class="ruby-value">0</span>]
|
183
190
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>] <span class="ruby-comment"># Returns cell A1 in the worksheet</span>
|
184
191
|
<span class="ruby-identifier">worksheet</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>] <span class="ruby-comment"># Returns cell A1 in the worksheet</span>
|
192
|
+
|
193
|
+
<span class="ruby-identifier">cell</span> = <span class="ruby-identifier">worksheet</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>]
|
194
|
+
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">value</span> <span class="ruby-comment"># Returns a properly converted value in the cell (if the file claims that the cell</span>
|
195
|
+
<span class="ruby-comment"># is holding a number, returns a respective Integer or Float, and so on).</span>
|
196
|
+
</pre>
|
197
|
+
|
198
|
+
<p>Or, if you prefer Excel-style references (single-cell only!)</p>
|
199
|
+
|
200
|
+
<pre class="ruby"><span class="ruby-identifier">cell</span> = <span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">cell_at</span>(<span class="ruby-string">'B11'</span>)
|
185
201
|
</pre>
|
186
202
|
|
187
203
|
<h4 id="label-Wrappers+for+accessing+Cell+properties">Wrappers for accessing Cell properties<span><a href="#label-Wrappers+for+accessing+Cell+properties">¶</a> <a href="#top">↑</a></span></h4>
|
@@ -194,15 +210,14 @@ preserving as much of the structure as possible.</p>
|
|
194
210
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">fill_color</span>
|
195
211
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">horizontal_alignment</span>
|
196
212
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">vertical_alignment</span>
|
197
|
-
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">get_border</span>(
|
198
|
-
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">get_border_color</span>(
|
213
|
+
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">get_border</span>(<span class="ruby-value">:top</span>)
|
214
|
+
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">get_border_color</span>(<span class="ruby-value">:top</span>)
|
199
215
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">text_rotation</span>
|
200
216
|
</pre>
|
201
217
|
|
202
218
|
<h4 id="label-Wrappers+for+accessing+Row+properties+">Wrappers for accessing Row properties <span><a href="#label-Wrappers+for+accessing+Row+properties+">¶</a> <a href="#top">↑</a></span></h4>
|
203
219
|
|
204
|
-
<p>Please note: these methods are being phased out in favor of the OOXML
|
205
|
-
object model.</p>
|
220
|
+
<p>Please note: these methods are being phased out in favor of the OOXML object model.</p>
|
206
221
|
|
207
222
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span> = <span class="ruby-identifier">workbook</span>[<span class="ruby-value">0</span>]
|
208
223
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_row_fill</span>(<span class="ruby-value">0</span>)
|
@@ -213,14 +228,13 @@ object model.</p>
|
|
213
228
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_row_height</span>(<span class="ruby-value">0</span>)
|
214
229
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_row_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-keyword">true</span>)
|
215
230
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_row_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-keyword">false</span>)
|
216
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_row_border</span>(<span class="ruby-value">0</span>,
|
217
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_row_border_color</span>(<span class="ruby-value">0</span>,
|
231
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_row_border</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:right</span>)
|
232
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_row_border_color</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:right</span>)
|
218
233
|
</pre>
|
219
234
|
|
220
235
|
<h4 id="label-Accessing+column+properties">Accessing column properties<span><a href="#label-Accessing+column+properties">¶</a> <a href="#top">↑</a></span></h4>
|
221
236
|
|
222
|
-
<p>Please note: these methods are being phased out in favor of the OOXML
|
223
|
-
object model.</p>
|
237
|
+
<p>Please note: these methods are being phased out in favor of the OOXML object model.</p>
|
224
238
|
|
225
239
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span> = <span class="ruby-identifier">workbook</span>[<span class="ruby-value">0</span>]
|
226
240
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_fill</span>(<span class="ruby-value">0</span>)
|
@@ -229,24 +243,10 @@ object model.</p>
|
|
229
243
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_font_color</span>(<span class="ruby-value">0</span>)
|
230
244
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">is_column_underlined</span>(<span class="ruby-value">0</span>)
|
231
245
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_width</span>(<span class="ruby-value">0</span>)
|
232
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_alignment</span>(<span class="ruby-value">0</span>,
|
233
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_alignment</span>(<span class="ruby-value">0</span>,
|
234
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_border</span>(<span class="ruby-value">0</span>,
|
235
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_border_color</span>(<span class="ruby-value">0</span>,
|
236
|
-
</pre>
|
237
|
-
|
238
|
-
<h4 id="label-Table+reading">Table reading<span><a href="#label-Table+reading">¶</a> <a href="#top">↑</a></span></h4>
|
239
|
-
|
240
|
-
<p>In order to discourage unnecessary reshuffling of data in memory, methods
|
241
|
-
<code>extract_data</code> and <code>get_table</code> are being deprecated.
|
242
|
-
You should access and iterate through rows and cells directly:</p>
|
243
|
-
|
244
|
-
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">row</span><span class="ruby-operator">|</span>
|
245
|
-
<span class="ruby-identifier">row</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">cells</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">cell</span><span class="ruby-operator">|</span>
|
246
|
-
<span class="ruby-identifier">val</span> = <span class="ruby-identifier">cell</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">cell</span>.<span class="ruby-identifier">value</span>
|
247
|
-
<span class="ruby-identifier">do_whatever_you_want</span>(<span class="ruby-identifier">val</span>)
|
248
|
-
}
|
249
|
-
}
|
246
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:horizontal</span>)
|
247
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:vertical</span>)
|
248
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_border</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:right</span>)
|
249
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">get_column_border_color</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:right</span>)
|
250
250
|
</pre>
|
251
251
|
|
252
252
|
<h3 id="label-Modifying">Modifying<span><a href="#label-Modifying">¶</a> <a href="#top">↑</a></span></h3>
|
@@ -258,7 +258,7 @@ You should access and iterate through rows and cells directly:</p>
|
|
258
258
|
|
259
259
|
<h4 id="label-Renaming+Worksheets">Renaming Worksheets<span><a href="#label-Renaming+Worksheets">¶</a> <a href="#top">↑</a></span></h4>
|
260
260
|
|
261
|
-
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_name</span> = <span class="ruby-string">'Cool New Name'</span>
|
261
|
+
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_name</span> = <span class="ruby-string">'Cool New Name'</span> <span class="ruby-comment"># Note that sheet name is limited to 31 characters by Excel.</span>
|
262
262
|
</pre>
|
263
263
|
|
264
264
|
<h4 id="label-Adding+Cells">Adding Cells<span><a href="#label-Adding+Cells">¶</a> <a href="#top">↑</a></span></h4>
|
@@ -290,53 +290,43 @@ You should access and iterate through rows and cells directly:</p>
|
|
290
290
|
|
291
291
|
<pre class="ruby"><span class="ruby-comment"># Possible weights: hairline, thin, medium, thick</span>
|
292
292
|
<span class="ruby-comment"># Possible "directions": top, bottom, left, right, diagonal</span>
|
293
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_border</span>(
|
294
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_border</span>(<span class="ruby-value">0</span>,
|
295
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_column_border</span>(<span class="ruby-value">0</span>,
|
293
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_border</span>(<span class="ruby-value">:top</span>, <span class="ruby-string">'thin'</span>) <span class="ruby-comment"># Sets A1 to have a top, thin border</span>
|
294
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_border</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:left</span>, <span class="ruby-string">'hairline'</span>) <span class="ruby-comment"># Sets first row to have a left, hairline border</span>
|
295
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_column_border</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:diagonal</span>, <span class="ruby-string">'medium'</span>) <span class="ruby-comment"># Sets first column to have diagonal, medium border</span>
|
296
296
|
|
297
297
|
<span class="ruby-comment"># Set the border style first so there's something to color.</span>
|
298
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_border_color</span>(<span class="ruby-value">0</span>,
|
299
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_column_border_color</span>(<span class="ruby-value">0</span>,
|
298
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_border_color</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:top</span>, <span class="ruby-string">'0ba53d'</span>) <span class="ruby-comment"># Sets first row to have a green top border</span>
|
299
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_column_border_color</span>(<span class="ruby-value">0</span>, <span class="ruby-value">:top</span>, <span class="ruby-string">'0ba53d'</span>) <span class="ruby-comment"># Sets first column to have a green top border</span>
|
300
300
|
</pre>
|
301
301
|
|
302
302
|
<h4 id="label-Changing+Alignment">Changing Alignment<span><a href="#label-Changing+Alignment">¶</a> <a href="#top">↑</a></span></h4>
|
303
303
|
|
304
304
|
<h5 id="label-Horizontal">Horizontal<span><a href="#label-Horizontal">¶</a> <a href="#top">↑</a></span></h5>
|
305
305
|
|
306
|
-
<
|
307
|
-
|
308
|
-
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_horizontal_alignment</span>(<span class="ruby-string">'center'</span>) <span class="ruby-comment"># Sets A1 to be centered</span>
|
306
|
+
<pre class="ruby"><span class="ruby-comment"># Possible alignments: center, distributed, justify, left, right</span>
|
307
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_horizontal_alignment</span>(<span class="ruby-string">'center'</span>) <span class="ruby-comment"># Sets A1 to be centered</span>
|
309
308
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_horizontal_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-string">'justify'</span>) <span class="ruby-comment"># Sets first row to be justified</span>
|
310
309
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_column_horizontal_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-string">'right'</span>) <span class="ruby-comment"># Sets first column to be right-aligned</span>
|
311
310
|
</pre>
|
312
311
|
|
313
312
|
<h5 id="label-Vertical">Vertical<span><a href="#label-Vertical">¶</a> <a href="#top">↑</a></span></h5>
|
314
313
|
|
315
|
-
<
|
316
|
-
|
317
|
-
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_vertical_alignment</span>(<span class="ruby-string">'bottom'</span>) <span class="ruby-comment"># Sets A1 to be bottom aligned</span>
|
314
|
+
<pre class="ruby"><span class="ruby-comment"># Possible alignments: bottom, center, distributed, top</span>
|
315
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_vertical_alignment</span>(<span class="ruby-string">'bottom'</span>) <span class="ruby-comment"># Sets A1 to be bottom aligned</span>
|
318
316
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_vertical_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-string">'distributed'</span>) <span class="ruby-comment"># Sets first row to be distributed vertically</span>
|
319
317
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_column_vertical_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-string">'top'</span>) <span class="ruby-comment"># Sets first column to be top aligned</span>
|
320
318
|
</pre>
|
321
319
|
|
322
320
|
<h5 id="label-Rotation">Rotation<span><a href="#label-Rotation">¶</a> <a href="#top">↑</a></span></h5>
|
323
321
|
|
324
|
-
<pre class="ruby"><span class="ruby-
|
322
|
+
<pre class="ruby"><span class="ruby-comment"># Possible values:</span>
|
323
|
+
<span class="ruby-comment"># * 0-90 - degrees counterclockwise, around the bottom LEFT corner of the cell;</span>
|
324
|
+
<span class="ruby-comment"># * 91-179 - degrees clockwise, around the bottom RIGHT corner of the cell;</span>
|
325
|
+
<span class="ruby-comment"># * 180-254 - degrees clockwise, around the bottom LEFT corner of the cell, text becomes progressively invisible</span>
|
326
|
+
<span class="ruby-comment"># * 255 - text is in normal rotation but displayed vertically (one letter under another), line feed starts new line to the right of the previous.</span>
|
327
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_text_rotation</span>(<span class="ruby-value">90</span>) <span class="ruby-comment"># Sets A1 to be rotated by 90 degrees</span>
|
325
328
|
</pre>
|
326
329
|
|
327
|
-
<p>Values:</p>
|
328
|
-
<ul><li>
|
329
|
-
<p>0-90 - degrees counterclockwise, around the bottom LEFT corner of the cell;</p>
|
330
|
-
</li><li>
|
331
|
-
<p>91-179 - degrees clockwise, around the bottom RIGHT corner of the cell;</p>
|
332
|
-
</li><li>
|
333
|
-
<p>180-254 - degrees clockwise, around the bottom LEFT corner of the cell,
|
334
|
-
text becomes progressively invisible</p>
|
335
|
-
</li><li>
|
336
|
-
<p>255 - text is in normal rotation but displayed vertically (one letter under
|
337
|
-
another), line feed starts new line to the right of the previous.</p>
|
338
|
-
</li></ul>
|
339
|
-
|
340
330
|
<h4 id="label-Changing+Row+Height">Changing Row Height<span><a href="#label-Changing+Row+Height">¶</a> <a href="#top">↑</a></span></h4>
|
341
331
|
|
342
332
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_height</span>(<span class="ruby-value">0</span>, <span class="ruby-value">30</span>) <span class="ruby-comment"># Sets first row height to 30</span>
|
@@ -354,74 +344,59 @@ another), line feed starts new line to the right of the previous.</p>
|
|
354
344
|
|
355
345
|
<h4 id="label-Insert+Row">Insert Row<span><a href="#label-Insert+Row">¶</a> <a href="#top">↑</a></span></h4>
|
356
346
|
|
357
|
-
<p>This method will insert a row at specified index, pushing all rows below it
|
358
|
-
down. It also copies styles from row above.</p>
|
347
|
+
<p>This method will insert a row at specified index, pushing all rows below it down. It also copies styles from row above.</p>
|
359
348
|
|
360
|
-
<p>WARNING: Use of this method WILL break formulas referencing cells which
|
361
|
-
have been moved, as the formulas do not adapt to the shifted rows</p>
|
349
|
+
<p>WARNING: Use of this method WILL break formulas referencing cells which have been moved, as the formulas do not adapt to the shifted rows</p>
|
362
350
|
|
363
351
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">insert_row</span>(<span class="ruby-value">1</span>)
|
364
352
|
</pre>
|
365
353
|
|
366
354
|
<h4 id="label-Insert+Column">Insert Column<span><a href="#label-Insert+Column">¶</a> <a href="#top">↑</a></span></h4>
|
367
355
|
|
368
|
-
<p>This method will insert a column at specified index, pushing all columns to
|
369
|
-
the right of it one to the right. It also copies styles from column to the
|
370
|
-
left</p>
|
356
|
+
<p>This method will insert a column at specified index, pushing all columns to the right of it one to the right. It also copies styles from column to the left</p>
|
371
357
|
|
372
|
-
<p>WARNING: Use of this method WILL break formulas referencing cells which
|
373
|
-
have been moved, as the formulas do not adapt to the shifted columns</p>
|
358
|
+
<p>WARNING: Use of this method WILL break formulas referencing cells which have been moved, as the formulas do not adapt to the shifted columns</p>
|
374
359
|
|
375
360
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">insert_column</span>(<span class="ruby-value">1</span>)
|
376
361
|
</pre>
|
377
362
|
|
378
363
|
<h4 id="label-Delete+Row">Delete Row<span><a href="#label-Delete+Row">¶</a> <a href="#top">↑</a></span></h4>
|
379
364
|
|
380
|
-
<p>This method will delete a row at specified index, pushing all rows below it
|
381
|
-
up.</p>
|
365
|
+
<p>This method will delete a row at specified index, pushing all rows below it up.</p>
|
382
366
|
|
383
|
-
<p>WARNING: Use of this method WILL break formulas referencing cells which
|
384
|
-
have been moved, as the formulas do not adapt to the shifted rows</p>
|
367
|
+
<p>WARNING: Use of this method WILL break formulas referencing cells which have been moved, as the formulas do not adapt to the shifted rows</p>
|
385
368
|
|
386
369
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">delete_row</span>(<span class="ruby-value">1</span>)
|
387
370
|
</pre>
|
388
371
|
|
389
372
|
<h4 id="label-Delete+Column">Delete Column<span><a href="#label-Delete+Column">¶</a> <a href="#top">↑</a></span></h4>
|
390
373
|
|
391
|
-
<p>This method will delete a column at specified index, pushing all columns to
|
392
|
-
the right of it left.</p>
|
374
|
+
<p>This method will delete a column at specified index, pushing all columns to the right of it left.</p>
|
393
375
|
|
394
|
-
<p>WARNING: Use of this method WILL break formulas referencing cells which
|
395
|
-
have been moved, as the formulas do not adapt to the shifted columns</p>
|
376
|
+
<p>WARNING: Use of this method WILL break formulas referencing cells which have been moved, as the formulas do not adapt to the shifted columns</p>
|
396
377
|
|
397
378
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">delete_column</span>(<span class="ruby-value">1</span>)
|
398
379
|
</pre>
|
399
380
|
|
400
381
|
<h4 id="label-Insert+Cell">Insert Cell<span><a href="#label-Insert+Cell">¶</a> <a href="#top">↑</a></span></h4>
|
401
382
|
|
402
|
-
<p>This method will insert a cell at specified position. It takes a :right or
|
403
|
-
:down option, to shift cells either left or down upon inserting (nil means
|
404
|
-
replacing the cell)</p>
|
383
|
+
<p>This method will insert a cell at specified position. It takes a :right or :down option, to shift cells either left or down upon inserting (nil means replacing the cell)</p>
|
405
384
|
|
406
|
-
<p>WARNING: Use of this method WILL break formulas referencing cells which
|
407
|
-
have been moved, as the formulas do not adapt to the shifted cells</p>
|
385
|
+
<p>WARNING: Use of this method WILL break formulas referencing cells which have been moved, as the formulas do not adapt to the shifted cells</p>
|
408
386
|
|
409
|
-
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">insert_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-string">"blah"</span>, <span class="ruby-identifier">formula</span> = <span class="ruby-keyword">nil</span>,
|
410
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">insert_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-string">"blah"</span>, <span class="ruby-identifier">formula</span> = <span class="ruby-keyword">nil</span>,
|
387
|
+
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">insert_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-string">"blah"</span>, <span class="ruby-identifier">formula</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-value">:right</span>) <span class="ruby-comment"># Inserts cell at A1, shifts cells in first row right</span>
|
388
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">insert_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-string">"blah"</span>, <span class="ruby-identifier">formula</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-value">:down</span>) <span class="ruby-comment"># Inserts cell at A1, shifts cells in first column down</span>
|
411
389
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">insert_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-string">"blah"</span>) <span class="ruby-comment"># Inserts cell at A1, shifts nothing</span>
|
412
390
|
</pre>
|
413
391
|
|
414
392
|
<h4 id="label-Delete+Cell">Delete Cell<span><a href="#label-Delete+Cell">¶</a> <a href="#top">↑</a></span></h4>
|
415
393
|
|
416
|
-
<p>This method will delete a cell at specified position. It takes a :left or
|
417
|
-
:up option, to shift cells either up or left upon deletion (nil means
|
418
|
-
simply deleting the cell contents)</p>
|
394
|
+
<p>This method will delete a cell at specified position. It takes a :left or :up option, to shift cells either up or left upon deletion (nil means simply deleting the cell contents)</p>
|
419
395
|
|
420
|
-
<p>WARNING: Use of this method WILL break formulas referencing cells which
|
421
|
-
have been moved, as the formulas do not adapt to the shifted cells</p>
|
396
|
+
<p>WARNING: Use of this method WILL break formulas referencing cells which have been moved, as the formulas do not adapt to the shifted cells</p>
|
422
397
|
|
423
|
-
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">delete_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>,
|
424
|
-
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">delete_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>,
|
398
|
+
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">delete_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-value">:left</span>) <span class="ruby-comment"># Deletes A1, shifts contents of first row left</span>
|
399
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">delete_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-value">:up</span>) <span class="ruby-comment"># Deletes A1, shifts contents of first column up</span>
|
425
400
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">delete_cell</span>(<span class="ruby-value">0</span>, <span class="ruby-value">0</span>) <span class="ruby-comment"># Deletes A1, does not shift cells</span>
|
426
401
|
</pre>
|
427
402
|
|
@@ -430,9 +405,16 @@ have been moved, as the formulas do not adapt to the shifted cells</p>
|
|
430
405
|
<pre class="ruby"><span class="ruby-identifier">cell</span> = <span class="ruby-identifier">worksheet</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>]
|
431
406
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">set_number_format</span> <span class="ruby-string">'0.0000%'</span> <span class="ruby-comment"># For formats, see https://support.office.com/en-us/article/5026bbd6-04bc-48cd-bf33-80f18b4eae68</span>
|
432
407
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">change_text_wrap</span>(<span class="ruby-keyword">true</span>) <span class="ruby-comment"># Makes the text in the cell to wrap.</span>
|
408
|
+
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">change_shrink_to_fit</span>(<span class="ruby-keyword">true</span>) <span class="ruby-comment"># Makes the text in the cell to shrink to fit.</span>
|
433
409
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">change_text_indent</span>(<span class="ruby-value">1</span>) <span class="ruby-comment"># Indents the text in the cell by 1 level</span>
|
434
410
|
</pre>
|
435
411
|
|
412
|
+
<h4 id="label-Add+hyperlink+to+a+Cell">Add hyperlink to a Cell<span><a href="#label-Add+hyperlink+to+a+Cell">¶</a> <a href="#top">↑</a></span></h4>
|
413
|
+
|
414
|
+
<pre class="ruby"><span class="ruby-identifier">cell</span>.<span class="ruby-identifier">add_hyperlink</span>(<span class="ruby-string">'http://example.com'</span>)
|
415
|
+
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">add_hyperlink</span>(<span class="ruby-string">'http://example.com'</span>, <span class="ruby-string">'Some tooltip text'</span>)
|
416
|
+
</pre>
|
417
|
+
|
436
418
|
<h2 id="label-I-2FO">I/O<span><a href="#label-I-2FO">¶</a> <a href="#top">↑</a></span></h2>
|
437
419
|
|
438
420
|
<p>By default, the gem operates with files on the local filesystem:</p>
|
@@ -441,9 +423,7 @@ have been moved, as the formulas do not adapt to the shifted cells</p>
|
|
441
423
|
<span class="ruby-identifier">workbook</span>.<span class="ruby-identifier">write</span>(<span class="ruby-string">"path/to/desired/Excel/file.xlsx"</span>)
|
442
424
|
</pre>
|
443
425
|
|
444
|
-
<p>It can also operate on <code>StringIO</code> objects, thus eliminating the
|
445
|
-
need to save the <code>xlsx</code> file to disk. This capability comes in
|
446
|
-
handy for web servers.</p>
|
426
|
+
<p>It can also operate on <code>StringIO</code> objects, thus eliminating the need to save the <code>xlsx</code> file to disk. This capability comes in handy for web servers.</p>
|
447
427
|
|
448
428
|
<pre class="ruby"><span class="ruby-identifier">workbook</span> = <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Parser</span>.<span class="ruby-identifier">parse_buffer</span>(<span class="ruby-identifier">buffer</span>)
|
449
429
|
<span class="ruby-identifier">workbook</span>.<span class="ruby-identifier">stream</span>
|
@@ -455,17 +435,25 @@ handy for web servers.</p>
|
|
455
435
|
<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Reference</span>.<span class="ruby-identifier">ref2ind</span>(<span class="ruby-string">'A1'</span>) <span class="ruby-operator">==</span> [<span class="ruby-value">0</span>, <span class="ruby-value">0</span>] <span class="ruby-comment"># Converts Excel-style cell reference to row and column index</span>
|
456
436
|
</pre>
|
457
437
|
|
438
|
+
<h3 id="label-Suppress+warnings+about+malformed+input+files">Suppress warnings about malformed input files<span><a href="#label-Suppress+warnings+about+malformed+input+files">¶</a> <a href="#top">↑</a></span></h3>
|
439
|
+
|
440
|
+
<pre class="ruby"><span class="ruby-constant">RubyXL</span>.<span class="ruby-identifier">class_variable_set</span>(<span class="ruby-value">:@@suppress_warnings</span>, <span class="ruby-keyword">true</span>)
|
441
|
+
</pre>
|
442
|
+
|
443
|
+
<h2 id="label-Data+validation+-28colloquially+referred+to+as+-22dropdown+list-22-29">Data validation (colloquially referred to as “dropdown list”)<span><a href="#label-Data+validation+-28colloquially+referred+to+as+-22dropdown+list-22-29">¶</a> <a href="#top">↑</a></span></h2>
|
444
|
+
|
445
|
+
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">add_validation_list</span>(<span class="ruby-string">"A1"</span>, [ <span class="ruby-string">"value1"</span>, <span class="ruby-string">"value2"</span> ])
|
446
|
+
</pre>
|
447
|
+
|
458
448
|
<h2 id="label-For+more+information">For more information<span><a href="#label-For+more+information">¶</a> <a href="#top">↑</a></span></h2>
|
459
449
|
|
460
450
|
<p>Take a look at the files in spec/lib/ for rspecs on most methods</p>
|
461
451
|
|
462
452
|
<h2 id="label-Contributing+to+rubyXL">Contributing to rubyXL<span><a href="#label-Contributing+to+rubyXL">¶</a> <a href="#top">↑</a></span></h2>
|
463
453
|
<ul><li>
|
464
|
-
<p>Check out the latest master to make sure the feature hasn
|
465
|
-
implemented or the bug hasn't been fixed yet</p>
|
454
|
+
<p>Check out the latest master to make sure the feature hasn’t been implemented or the bug hasn’t been fixed yet</p>
|
466
455
|
</li><li>
|
467
|
-
<p>Check out the issue tracker to make sure someone already hasn
|
468
|
-
requested it and/or contributed it</p>
|
456
|
+
<p>Check out the issue tracker to make sure someone already hasn’t requested it and/or contributed it</p>
|
469
457
|
</li><li>
|
470
458
|
<p>Fork the project</p>
|
471
459
|
</li><li>
|
@@ -473,25 +461,22 @@ requested it and/or contributed it</p>
|
|
473
461
|
</li><li>
|
474
462
|
<p>Commit and push until you are happy with your contribution</p>
|
475
463
|
</li><li>
|
476
|
-
<p>Make sure to add tests for it. This is important so I don
|
477
|
-
a future version unintentionally.</p>
|
464
|
+
<p>Make sure to add tests for it. This is important so I don’t break it in a future version unintentionally.</p>
|
478
465
|
</li><li>
|
479
|
-
<p>Please try not to mess with the Rakefile, version, or history. If you want
|
480
|
-
to have your own version, or is otherwise necessary, that is fine, but
|
481
|
-
please isolate to its own commit so I can cherry-pick around it.</p>
|
466
|
+
<p>Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.</p>
|
482
467
|
</li></ul>
|
483
468
|
|
484
469
|
<h2 id="label-Copyright">Copyright<span><a href="#label-Copyright">¶</a> <a href="#top">↑</a></span></h2>
|
485
470
|
|
486
|
-
<p>Copyright © 2011 Vivek Bhagwat, 2013-
|
487
|
-
|
471
|
+
<p>Copyright © 2011 Vivek Bhagwat, 2013-2022 Wesha. See LICENSE.txt for further details.</p>
|
472
|
+
|
488
473
|
</main>
|
489
474
|
|
490
475
|
|
491
476
|
|
492
477
|
<footer id="validator-badges" role="contentinfo">
|
493
|
-
<p><a href="
|
494
|
-
<p>Generated by <a href="https://
|
478
|
+
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
479
|
+
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.4.0.
|
495
480
|
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
496
481
|
</footer>
|
497
482
|
|