多维表新版api学习笔记:创建sheet & view的实例,数据表和视图 1
const activeSht=Application.ActiveSheet
const sht=Application.Sheets.Item("数据表") //名为“数据表”的表实例
const sht1=Application.Sheets("数据表")//跟上面一个效果
const sht2=Application.Sheets(1) //多维表内第一个创建的数据表实例
const sht3=Application.Sheet.GetSheets()[0] //第一个创建的数据表
const sht4=Application.Selection.GetActiveSheet() //当前表实例
//Application.Sheets(参数),这里参数要么是索引(从1开始),要么是数据表名称
console.log("activeSht.Id",activeSht.Id)
console.log("sht.Id",sht.Id) //表id
console.log("sht2.Id",sht1.Id) // 表id
console.log("sht2.Id",sht2.Id)// 表id
//前4个是新版api
console.log("sht3.Id",sht3.id) //表id,注意这里是小写i
console.log("sht4.sheetId",sht4.sheetId)// 表id
//比较一下上面sht实例获取id的属性,不要搞混哦~
console.log("sht.Name",sht.Name) //可以验证下表名对不对
console.log("sht3.Name",sht3.name)
const view=sht.Views(1)
const view1=sht1.Views(1)
const view2=sht2.Views(1)
//前三种应该是新版api获取视图的方式,
// const view3=sht3.Views(1)//报错
// const view4=sht4.Views(1)//报错
console.log("view.Name",view.Name) //表格视图
console.log("view1.Name",view1.Name)//表格视图
console.log("view2.Name",view2.Name)//表格视图
console.log("view2.Id",view2.Id)
// console.log(view3.Name)//报错
// console.log(view4.Name)//报错
const views = Application.View.GetViews({ SheetId: 1 }) //旧版api获取视图
console.log("views[0].name",views[0].name) //第一个字母小写
console.log("views[0].id",views[0].id)//第一个字母小写
//旧版api id/name等属性第一个字母是小写,在新版里是大写
//另外新版api 指定view的方式有两种,索引(从1开始)和视图id,希望增加视图名称作为参数
const view5=sht.Views(2) //第二个视图
const view6=sht.Views("B")//id为“B”的视图
// const views2=Application.Sheets("数据表").Views
// const view7=views2(2) //数据表的第二个视图
// console.log("views2.Count",views2.Count) //数据表内视图数量
const recCount = sht.RecordRange.Count //当前表内记录数量
console.log(sht.RecordRange(1).Id)//第一行记录id
console.log(sht.RecordRange(1,3).Text)//第一行第3个字段值
console.log(sht.RecordRange(1,3).Value)//第一行第3个字段值
console.log(view.RecordRange(3,2).Value)// 第一个视图,第3行第2个字段值
for (let i = 1; i <= recCount; i++) {
// console.log(sht.RecordRange(i,1).Value) //第一行第一个字段的值
// console.log(sht.RecordRange(1,[1,2]).Value)//第一行第一、第二字段的值,数组
// sht.RecordRange(i,1).Value=i.toString() //给第一个字段赋值
// sht.RecordRange(i,[1,2]).Value=i.toString() //2个字段都赋值
//sht.RecordRange(i,["@名称",2]).Value=i.toString() //给名称字段和第二个字段赋值
sht.RecordRange(i, ["@名称", "@数量"]).Value = i.toString() //给名称字段和数量字段赋值
}
创作者俱乐部成员