如何在Access数据库存储Excel图表线条的实际厚度而非枚举值?
读取Excel图表数据系列线条实际磅数的解决方案
直接使用Series.Border.Weight属性就能获取线条的实际磅数,而非xlThin/xlThick这类枚举值。
为什么原属性不行?
Series.Format.Line.Weight在部分场景下会返回预设的枚举常量,而Border.Weight属性始终返回以磅为单位的精确数值——0代表无线条,大于0的数值对应你手动设置的实际厚度。
示例VBA代码
Sub GetActualLineWeights() Dim targetChart As Chart Dim dataSeries As Series Dim actualWeight As Double ' 替换为你要处理的图表对象 Set targetChart = ThisWorkbook.Worksheets("Sheet1").ChartObjects("Chart 1").Chart For Each dataSeries In targetChart.SeriesCollection actualWeight = dataSeries.Border.Weight ' 这里添加将actualWeight写入Access数据库的逻辑 Debug.Print "系列名称: " & dataSeries.Name & " | 线条厚度: " & actualWeight & " 磅" Next dataSeries End Sub
注意事项
- 若数据系列未设置线条(即「无」),
Border.Weight会返回0; - 无论你设置的是0.5磅、3磅还是12磅,该属性都会返回对应的精确数值。
内容的提问来源于stack exchange,提问作者PetGriffin
相关产品推荐
相关产品推荐

