主题
表格组件图形操作相关 API
添加图形
ActiveWorkbook.ActiveSheet.Shapes.AddChart2()
添加图形
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.AddChart2({ Style, XlChartType, Left, Top, Width, Height })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Style | String | 否 | 指定图表样式 | |
XlChartType | Enum | 否 | 指定图表类型,对应 Enum.XlChartType | |
Left | Number | 否 | 指定新建图表的左边距,单位 px | |
Top | Number | 否 | 指定新建图表的上边距,单位 px | |
Width | Number | 否 | 指定新建图表的宽度,单位 px | |
Height | Number | 否 | 指定新建图表的高度,单位 px |
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 当前工作表上的所有 Shape 对象的集合
const shapes = await activeSheet.Shapes
// 添加 300 * 300 的矩形
await shapes.AddChart2(340, 51, 0, 0, 300, 300)
}
图形对象
ActiveWorkbook.ActiveSheet.Shapes
当前工作表上的所有 Shape 对象的集合
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 当前工作表上的所有 Shape 对象的集合
const shapes = await activeSheet.Shapes
}
图形数量
ActiveWorkbook.ActiveSheet.Shapes.Count
图形的数量
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Count
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 当前工作表上的所有 Shape 对象的集合
const shapes = await activeSheet.Shapes
// 当前图形的数量
const count = await shapes.Count
console.log(count)
}
图例是否可见
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart.HasLegend
如果图表有图例,则该属性值为 true
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart.HasLegend
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象
const shapes = await activeSheet.Shapes
// 单个图形对象
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 单个图表对象
const chart = await shape.Chart
// 获取图表数据源
const source = await activeSheet.Range('A1:D4')
// 设置图表数据源
await chart.SetSourceData(source, 1)
// 设置图例不可见
chart.HasLegend = false
}
标题是否可见
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart.HasTitle
如果坐标轴或图表有可见标题,则该属性值为 true
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart.HasTitle
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象
const shapes = await activeSheet.Shapes
// 单个图形对象
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 单个图表对象
const chart = await shape.Chart
// 获取图表数据源
const source = await activeSheet.Range('A1:D4')
// 设置图表数据源
await chart.SetSourceData(source, 1)
// 设置标题不可见
chart.HasTitle = false
}
设置图表数据源
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart.SetSourceData()
为指定图表设置源数据区域
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart.SetSourceData({ Source, PlotBy })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Source | Range | 是 | 包含源数据的区域,可用 Range 对象 | |
PlotBy | Enum | 否 | 指定图表类型,对应 Enum.XlRowCol,可以为 xlColumns 或 xlRows |
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象
const shapes = await activeSheet.Shapes
// 单个图形对象
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 单个图表对象
const chart = await shape.Chart
// 获取图表数据源
const source = await activeSheet.Range('A1:D4')
// 设置图表数据源
await chart.SetSourceData(source, 1)
}
单个图表对象
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart
单个图表对象
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象
const shapes = await activeSheet.Shapes
// 单个图形对象
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 单个图表对象
const chart = await shape.Chart
}
标题
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart.ChartTitle.Text
设置标题
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Chart.ChartTitle.Text
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象
const shapes = await activeSheet.Shapes
// 单个图形对象
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 单个图表对象
const chart = await shape.Chart
// 获取图表数据源
const source = await activeSheet.Range('A1:D4')
// 设置图表数据源
await chart.SetSourceData(source, 1)
// 设置新标题
chart.ChartTitle.Text = '这是新标题'
}
删除单个图形
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Delete()
删除单个图形
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Delete()
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象
const shapes = await activeSheet.Shapes
// 单个图形对象
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 获取图形数据源
const source = await activeSheet.Range('A1:B4')
// 设置图形数据源
await shape.Chart.SetSourceData(source, 1)
// 删除单个图形
setTimeout(async () => {
await shape.Delete()
}, 3000)
}
选择单个图形
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Select()
选择单个图形
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Select()
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
//或者 activeSheet = await app.ActiveSheet;
// 图形对象
const shapes = await activeSheet.Shapes
// 单个图形对象
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 获取图形数据源
const source = await activeSheet.Range('A1:B4')
// 设置图形数据源
await shape.Chart.SetSourceData(source, 1)
// 选择单个图形
setTimeout(async () => {
await shape.Select()
}, 3000)
}
单个图形名称
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Name
单个图形标题
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Name
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象
const shapes = await activeSheet.Shapes
// 添加 300 * 300 的矩形
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 获取图形名称
const name = await shape.Name
console.log(name)
}
单个图形对象
ActiveWorkbook.ActiveSheet.Shapes.Item(Index)
代表绘图层中的对象,例如自选图形、任意多边形、OLE 对象或图片
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index)
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象集合
const shapes = await activeSheet.Shapes
// 添加 300 * 300 的矩形
await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 获取最新的图形对象集合
const newShapes = await activeSheet.Shapes
// 单个图形对象
const shape = await newShapes.Item(1)
}
单个图形 ID
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).ID
单个图形 ID
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).ID
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象
const shapes = await activeSheet.Shapes
// 添加 300 * 300 的矩形
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 获取图形 ID
const id = await shape.ID
console.log(id)
}
单个图形标题
ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Title
单个图形标题
语法
表达式.ActiveWorkbook.ActiveSheet.Shapes.Item(Index).Title
表达式:文档类型应用对象
示例
//@file=base.xlsx
async function example() {
await instance.ready()
const app = instance.Application
// 活动工作簿中的活动工作表
const activeSheet = await app.ActiveWorkbook.ActiveSheet
// 图形对象集合
const shapes = await activeSheet.Shapes
// 添加 300 * 300 的矩形
const shape = await shapes.AddChart2(340, 51, 0, 0, 300, 300)
// 设置图形标题
shape.Title = 'WebOffice'
}