wps-jsa如何增强代码输入提示? 提高编码效率

文摘   2024-11-23 09:23   湖北  

2000元课程

  免费学7天

函数+VBA



什么是代码输入提示?

代码输入提示(Code Completion/IntelliSense)是一种编程辅助功能,它可以在编写代码时自动提示可用的变量、函数、类等代码元素,并给出相关的信息和用法示例。这种功能可以大大提高开发效率,减少手动输入和查找的时间。

代码输入提示的主要特点包括:

  • 自动补全:当输入部分关键字或标识符时,编辑器会自动弹出可选的补全列表,用户可以快速选择并完成输入。

  • 上下文相关:提示会根据当前的代码上下文,智能地推荐相关的代码元素,如变量、函数、类等。

  • 信息展示:除了补全建议,提示框还会显示代码元素的类型、参数列表、注释等相关信息,帮助开发者快速了解和使用。


WPS-JSA的代码输入提示现状

wps-jsa开发环境提供了基础的输出提示比如,Range("A1")后面打点,就会弹出一些提示,下图所示

但是更多的情况它没有任何提示,比如

  • Sheets("Sheet1") 访问表的时候

  • ActiveSheet 访问表 后面打点无正确提示

  • Cells(1,1)按单元格行列号访问的时候

  • Selection 访问当前选中单元格

  • Workbooks("xx.xlsm")

  • 作为函数参数时 任何变量提示都会消失




在JSA编程中,缺乏提示功能可能会对非英语母语的用户造成不小的困扰。例如,当您尝试访问特定的工作表时,如使用 Sheets("Sheet1") 或 ActiveSheet,您可能不会得到预期的提示。同样,在通过行列号访问单元格,如 Cells(1,1),或访问当前选中的单元格 Selection 时,也可能面临类似的问题。

此外,当您处理工作簿,如 Workbooks("xx.xlsm"),这种缺乏提示的情况会带来挑战。您必须准确地记住并正确输入英文命令,包括正确的大小写。在VBA中,大小写错误可能不会导致错误,但在JSA中,即使是大小写错误也会导致代码无法运行。例如,Cells(1,1).ClearContents 这样的命令,您需要精确地记住每个单词,包括它们的大小写。

    

另一个例子是 Selection.NumberFormat,这个命令中的单词可能很难记住。此外,JSA中数组的方法虽然丰富,但对于英语能力较弱的用户来说,记住所有的方法名称可能是一项艰巨的任务。即使是简单的 .length 方法,用于获取数组长度,也可能难以一次性正确输入。

    

值得注意的是,数组在某些情况下确实有提示功能,但这通常限于直接声明和赋值的数组。当数组作为函数参数传递时,例如在变量中,提示功能通常会消失。这可能会给编程带来额外的困难。

arr.map(x=>x.length+1)

括号里面的x是单行一维数组, 这个x.后面的就没提示了, 只能靠自己记住,另外 所有的变量, 作为函数或者lambda函数参数的时候, 都会失去输入提示,比如在写带参数的函数时

        

因为jsa是弱类型语言,无法和VBA一样声明类型,这样就没法获得输入提示。

如何解决上诉问题:

在准备wps-jsa课程的过程中,我就意识到了这个输入提示的问题对新手的打击非常致命,甚至会让很多人完全失去学习和使用jsa的信心,所以我在jsa880框架里,增加一些黑科技手段,让上面这些无法提供输入提示的场合,多一点点操作,就可以得到完整的输入提示。首先复制我的jsa880框架代码放到自己代码的第一个模块里

增强输入提示方式:

  • Sheets("Sheet1") ->asSheet("Sheet1") 

  • ActiveSheet -> $ActiveSheet

  • Cells(1,1) -> $(Cells(1,1))

  • Selection -> $Selection 

  • Workbooks("xx.xlsm")->asWorkBook("xx.xlsm")

  • arr.map(x=>x.length) ->arr.map(x=>asArray(x).length

    下面是他们获得输入提示后的样子

 

 

可不要小看这些输入提示,它可以极大的提高编码速度,让我们可以在记不住英文单词的情况下,流畅的使用这些对象的属性和方法

当然这也只是JSA880框架所有能力的冰山一角,更多请阅读原文

JSA880框架获取方式 购买【郑广学WPS-JSA火箭速成班】教程即可

课程购买咨询请加我的微信EXCCEL880B  试学网址v.excel880.com

2000元课程

  免费学7天

函数+VBA




EXCEL880
Excel/WPS办公技巧分享 郑广学VBA/VSTO/JSA教程分享 课程咨询及付费定制表格加EXCEL880B
 最新文章