首页 > 其他分享 >借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行

借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行

时间:2022-11-11 18:09:19浏览次数:79  
标签:宏在 activeSheet range SetHidden 电子表格 var ONLYOFFICE


使用电子表格的过程中,有时我们需要将某些行隐藏起来,这样在操作规模比较大的数据块时能更加方便。在本文中,我们将向您展示如何使用一个小而精巧的 ONLYOFFICE 宏来实现此功能。

为此,我们将使用 SetHidden 方法。此方法其实已在另一个 ONLYOFFICE 宏(可用于取消隐藏电子表格中的所有行和列)中使用过一次。

借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行_onlyoffice

关于 ONLYOFFICE 宏

如果您是一名资深 Microsoft Excel 用户,那么相信您已对于 VBA 宏非常熟悉了。这些宏是帮助您自动执行日常任务的小型脚本。无论是重构数据,还是在单元格区域中插入多个值。ONLYOFFICE 宏的基础是 JavaScript 语法与文档生成器 API 方法。基于 JavaSript 的宏易于使用,具有跨平台特性且十分安全。这就使得其与 VBA 相比有着显著的优势。

ONLYOFFICE 文档免费在线宏课程

近期,我们将开始发布有关 ONLYOFFICE 解决方案的免费视频课程。首个视频课程将关注 ONLYOFFICE 文档中的宏,现已在 YouTube 上提供。

本课程分为 4 节,每节时长大约在 5-10 分钟。您将了解宏的工作原理,以及一些实际的例子。为了方便起见,我们还在视频描述中添加了时间戳 – 只需点击一下即可转到您感兴趣的主题。

阅读​​​​这篇文章​​​​,了解更多。​

构建“隐藏所选行”宏

宏代码如下:

var activeSheet = Api.ActiveSheet;
var indexRowMax = 1048576;
var n = 1;
for (let i = 0; i < indexRowMax; i++) {
activeSheet.GetRows(n).SetHidden(false);
n++;
}

借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行_电子表格_02

如需取消隐藏文档中的所有行,我们需要将 indexRowMax 变量设置为最大行数。然后通过 for loop 循环遍历整个电子表格,接着将 SetHidden 方法的属性值更改为 FALSE,以此取消对于行的隐藏。

相信您也猜到了,SetHidden 方法的作用多种多样。不仅可用于取消隐藏行,还可用于隐藏行。不过,如果我们想要隐藏一些特定的行,那么 for loop 循环可能并不是最好的选择。此时我们会建议使用 ForEach 函数来对目标文档中的已选部分进行遍历。这将有助于根据单元格值来隐藏所选内容中的特定行。

所以,首先我们需要获取活动工作表和已选择部分:

var activeSheet = Api.ActiveSheet;
var selection = activeSheet.Selection;

借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行_宏_03

然后添加 ForEach 函数来遍历所选部分中的所有单元格并获取值:

selection.ForEach(function (range) { 
var value = range.GetValue();
}

借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行_onlyoffice_04

接着我们添加一条 if 语句,用于获取包含小于 35 的值的行索引。我们会将此索引存储在变量中,并将其用作设置行隐藏状态的参数:

selection.ForEach(function (range) { 
var value = range.GetValue();
if (value < "35") {
var row = range.GetRow();
range.GetRows(row[range]).SetHidden(true);
}

借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行_macros_05

完整的宏代码如下:

(function()
{
var activeSheet = Api.ActiveSheet;
var selection = activeSheet.Selection;
selection.ForEach(function (range) {
var value = range.GetValue();
if (value < "35") {
var row = range.GetRow();
range.GetRows(row[range]).SetHidden(true);
}
});
})();

借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行_javascript_06

现在让我们来运行一下宏,看看效果如何!

借助 ONLYOFFICE 宏在电子表格中隐藏选择的特定行_宏_07

希望这里的宏能够帮助您更便捷地对电子表格数据进行管理。这里的宏只是借助我们的 API 方法可以实现的众多功能之一。我们的宏是基于 JavaScript 的,这就确保了其灵活性,您可轻松根据自己的需求进行定制。我们强烈建议您上手试试,制作自己的宏。

欢迎随时提问,也欢迎与我们分享您的想法。我们已做好与您探讨和合作的准备。祝您的探索之旅一帆风顺!

相关链接

​ONLYOFFICE 宏 API 文件​

​使用 ONLYOFFICE 宏监测空气质量数据​

​如何为 ONLYOFFICE 文档(Docs)创建宏​

​GitHub 上的 ONLYOFFICE​


标签:宏在,activeSheet,range,SetHidden,电子表格,var,ONLYOFFICE
From: https://blog.51cto.com/u_15679924/5845214

相关文章

  • 如何从 snap 包安装ONLYOFFICE桌面版编辑器v7.2
    使用桌面版​​在线编辑器​​,无需保持互联网连接状态,也可处理您计算机上的离线文件。因此,如果您愿意,可以从我们的网站下载并安装桌面版编辑器,或者将带有它们代码库的链接添......
  • 借助 ONLYOFFICE 宏进行去重
    在本文中,我们将介绍一个简短的宏。您可使用它来从电子表格中去掉重复项。就功能性而言,其与Excel中已得到广泛使用的“去重”宏类似。不过,由于这是一个基于JavaScript......
  • 大小写金额转换(电子表格大小写金额转换)
    excel金额大小写怎么转换?1、比如输入,得出伍万肆仟柒佰叁?  若输入数据在A1单元格内,则公式如下:=IF(LEN(A1)=1,"零元零"&TEXT(A1,"[DBNum2]G/通用格式")&"分",IF(OR(RIGHT......
  • 群晖安装docker版 onlyoffice
    搭建好OnlyOffice后因为服务是公开的,所以任何人都可以链接使用,就给内存本不就富裕的服务器更大的压力。所以我们需要给OnlyOffice设置好密钥(JWT令牌),只给自己允许的人......
  • Microsoft Excel 2019 for Mac(excel电子表格)中文正式版mac/win
    MicrosoftExcel是微软公司的办公软件Microsoftoffice的组件之一,是由Microsoft为Windows和AppleMacintosh操作系统的电脑而编写和运行的一款试算表软件。Excel是微软办......
  • 如何在 Windows 上安装 ONLYOFFICE 文档 v7.2
    通过阅读本文,了解如何在Windows上安装ONLYOFFICE文档v7.2。引言使用社区版,您可以在本地服务器上安装ONLYOFFICE文档,并将在线编辑器与ONLYOFFICE协作平台​或其他热门系......
  • ALV 导出电子表格的文件格式固定的删除办法
    在ALV显示中,选择菜单“列表-导出-电子表格”后,会出现下面这样的选择窗口:如果选中了“始终使用选定的格式”,则以后都会使用当前选定的格式(经常是第一项MHTML,可实际上用户希......
  • 电子表格也能做购物车?简单三步就能实现
    在我们的项目当中,经常需要添加一些选择界面,让用户直观地进行交互,比如耗材、办公用品、设计稿或者其它可以选择的内容。在线商城的商品目录和购物车无疑是一种大家都很熟悉......
  • 如何在 CentOS 及其衍生版上安装 ONLYOFFICE 文档 v7.2
     使用社区版,您可以在本地服务器上安装 ONLYOFFICE文档,并将在线编辑器与 ​​ONLYOFFICE协作平台​​或​​其他热门系统​​集成在一起。ONLYOFFICE文档是什么ONLYOFFI......
  • 如何将ONLYOFFICE 桌面编辑器 v7.2 连接到 Seafile 服务器
    ​​ONLYOFFICE桌面编辑器​​是免费开源的办公套件,包括文本文档、电子表格、演示文稿和表单编辑器。您可以离线编辑文件,而且,您也可以将应用程序连接到云端(ONLYOFFICE、Next......