尝试:Script Lab,Excel 基础操作(1)

简介: 尝试:Script Lab,Excel 基础操作(1)

准备工作

Script Lab 在 2018 年经历了一次从头到尾的重新编写。虽然其视觉设计与 2017 版保持相似,但其技术堆栈已经过大修,为了能够利用 React 和 Fabric React 的优秀性质。改进包括了:键盘可访问性、更快的运行速度、用户可配置的设置

但是为了保持代码的简洁性,思来想去还是牺牲以上优点,当前默认环境(Production)暂时切换到 2017 版本的 Script Lab ,为此需要执行以下操作:

  1. 打开编辑器窗格,然后选择或创建一个代码段;
  2. 在编辑器的右下角,单击cog图标以打开设置;
  3. 在页脚左侧下拉列表中,选择“Script Lab 2017”。

image.png


最小代码

【对像层级】

上下文:context

工作簿:workbook

工作表:sheet

单元格:cell


【单元赋值】单元值: [["HSOffice"]]


Excel.run
    (
    async (context) => {
        //
        const workbook = context.workbook;
        const sheet = workbook.worksheets.getActiveWorksheet();
        const cell = sheet.getCell(0, 0);
        //
        cell.values =
            [
                ["HSOffice"]
            ]
    }
    );


【小技巧】代码美化:Shift-Alt-F

image.png



Excel.run


我们先从代码第一行代码看起:Excel.run。在这里 Excel 是命名空间,而 run 而是一个启动函数(我暂时先这样称呼,直到找到官方的说法),接受一个函数作为其参数,前返回一个对像(后面会提到用途)。而这个内部函数,其实是一个批处理函数,代表了真正的 Excel 操作。

批处理函数有一个代表宿主请求的上下文参数,该参数是与宿主(在这里是 Excel 本身)进行通信的途径。Excel.run 方法只是传向批处理函数传递了一个新的上下文请求,批处理函数才是整个代码的核心部分,在这里我们看到了最常见的处理方式:


const workbook = context.workbook;

其实更典型的写法,要会加上错误捕获的部分。补充一点,Excel.run 其实还会返回一个 Promise 对象(Promise在处理异步操作非常有用)。反正更为正统的写法是,在启动函数之后应该始终跟随.catch(错误捕获),示例如下:

//启动函数
Excel.run
    (
    //批处理函数
    function (context) {
        //批处理内容
        //返回代理
        return context.sync();
    }
    ).catch
    (
        //异常处理
    );


image.png

相关文章
|
前端开发 JavaScript 程序员
Script Lab 03:Script Lab,启动函数,Excel 基础操作(1)
Script Lab 03:Script Lab,启动函数,Excel 基础操作(1)
946 0
Script Lab 03:Script Lab,启动函数,Excel 基础操作(1)
|
存储 数据挖掘
业务数据分析-Excel的基础操作(一)
业务数据分析-Excel的基础操作(一)
225 0
业务数据分析-Excel的基础操作(一)
Script Lab 07:引入控件,Excel 基础操作(5)
Script Lab 07:引入控件,Excel 基础操作(5)
305 0
Script Lab 07:引入控件,Excel 基础操作(5)
|
JavaScript 前端开发 API
Script Lab 06:事件处理,Excel 基础操作(4)
Script Lab 06:事件处理,Excel 基础操作(4)
244 0
Script Lab 06:事件处理,Excel 基础操作(4)
|
算法 JavaScript C#
Script Lab 版,九九乘法表,Excel 基础操作(2)
Script Lab 版,九九乘法表,Excel 基础操作(2)
264 0
Script Lab 版,九九乘法表,Excel 基础操作(2)
|
JavaScript 前端开发 算法
Script Lab 04:Script Lab,九九乘法表,Excel 基础操作(2)
Script Lab 04:Script Lab,九九乘法表,Excel 基础操作(2)
320 0
Script Lab 04:Script Lab,九九乘法表,Excel 基础操作(2)
|
2月前
|
Python
如何根据Excel某列数据为依据分成一个新的工作表
在处理Excel数据时,我们常需要根据列值将数据分到不同的工作表或文件中。本文通过Python和VBA两种方法实现该操作:使用Python的`pandas`库按年级拆分为多个文件,再通过VBA宏按班级生成新的工作表,帮助高效整理复杂数据。
|
2月前
|
数据采集 数据可视化 数据挖掘
用 Excel+Power Query 做电商数据分析:从 “每天加班整理数据” 到 “一键生成报表” 的配置教程
在电商运营中,数据是增长的关键驱动力。然而,传统的手工数据处理方式效率低下,耗费大量时间且易出错。本文介绍如何利用 Excel 中的 Power Query 工具,自动化完成电商数据的采集、清洗与分析,大幅提升数据处理效率。通过某美妆电商的实战案例,详细拆解从多平台数据整合到可视化报表生成的全流程,帮助电商从业者摆脱繁琐操作,聚焦业务增长,实现数据驱动的高效运营。
|
4月前
|
存储 安全 大数据
网安工程师必看!AiPy解决fscan扫描数据整理难题—多种信息快速分拣+Excel结构化存储方案
作为一名安全测试工程师,分析fscan扫描结果曾是繁琐的手动活:从海量日志中提取开放端口、漏洞信息和主机数据,耗时又易错。但现在,借助AiPy开发的GUI解析工具,只需喝杯奶茶的时间,即可将[PORT]、[SERVICE]、[VULN]、[HOST]等关键信息智能分类,并生成三份清晰的Excel报表。告别手动整理,大幅提升效率!在安全行业,工具党正碾压手动党。掌握AiPy,把时间留给真正的攻防实战!官网链接:https://www.aipyaipy.com,解锁更多用法!
|
2月前
|
Python
将Excel特定某列数据删除
将Excel特定某列数据删除

热门文章

最新文章