整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          使用宏在電子表格中隱藏選擇的特定行

          使用宏在電子表格中隱藏選擇的特定行

          用電子表格的過程中,有時(shí)我們需要將某些行隱藏起來,這樣在操作規(guī)模比較大的數(shù)據(jù)塊時(shí)能更加方便。在本文中,我們將向您展示如何使用一個(gè)小而精巧的 ONLYOFFICE 宏來實(shí)現(xiàn)此功能。

          為此,我們將使用 SetHidden 方法。此方法其實(shí)已在另一個(gè) ONLYOFFICE 宏(可用于取消隱藏電子表格中的所有行和列)中使用過一次。

          宏代碼如下:

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

          如需取消隱藏文檔中的所有行,我們需要將 indexRowMax 變量設(shè)置為最大行數(shù)。然后通過 for loop 循環(huán)遍歷整個(gè)電子表格,接著將 SetHidden 方法的屬性值更改為 FALSE,以此取消對(duì)于行的隱藏。

          構(gòu)建“隱藏所選行”宏

          相信您也猜到了,SetHidden 方法的作用多種多樣。不僅可用于取消隱藏行,還可用于隱藏行。不過,如果我們想要隱藏一些特定的行,那么 for loop 循環(huán)可能并不是最好的選擇。此時(shí)我們會(huì)建議使用 ForEach 函數(shù)來對(duì)目標(biāo)文檔中的已選部分進(jìn)行遍歷。這將有助于根據(jù)單元格值來隱藏所選內(nèi)容中的特定行。

          所以,首先我們需要獲取活動(dòng)工作表和已選擇部分:

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

          然后添加 ForEach 函數(shù)來遍歷所選部分中的所有單元格并獲取值:

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

          接著我們添加一條 if 語句,用于獲取包含小于 35 的值的行索引。我們會(huì)將此索引存儲(chǔ)在變量中,并將其用作設(shè)置行隱藏狀態(tài)的參數(shù):

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

          完整的宏代碼如下:

          (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);
              }
          });
          })();

          現(xiàn)在讓我們來運(yùn)行一下宏,看看效果如何!

          希望這里的宏能夠幫助您更便捷地對(duì)電子表格數(shù)據(jù)進(jìn)行管理。這里的宏只是借助我們的 API 方法可以實(shí)現(xiàn)的眾多功能之一。我們的宏是基于 JavaScript 的,這就確保了其靈活性,您可輕松根據(jù)自己的需求進(jìn)行定制。

          我們強(qiáng)烈建議您上手試試,制作自己的宏。歡迎隨時(shí)提問,也歡迎與我們分享您的想法。我們已做好與您探討和合作的準(zhǔn)備。祝您的探索之旅一帆風(fēng)順!

          平常的樣式排版中,我們經(jīng)常遇到將某個(gè)模塊隱藏,下面我整理了一下隱藏元素的多種方法以及對(duì)比(有的占據(jù)空間,有的不占據(jù)空間。有的可以點(diǎn)擊,有的不能點(diǎn)擊。):

          ( 一 ) display: none;

          特點(diǎn):元素不可見,不占據(jù)空間,無法響應(yīng)點(diǎn)擊事件。

          .hide{
           display: none; 
          }
          

          ( 二 ) opacity: 0; ( IE8以下版本:filter:Alpha(opacity=50) )

          特點(diǎn):改變?cè)赝该鞫?,元素不可見,占?jù)頁面空間,可以響應(yīng)點(diǎn)擊事件。

          .hide{
           opacity: 0;
           filter:Alpha(opacity=0); 
          }
          

          ( 三 ) visibility: hidden;

          特點(diǎn):元素不可見,占據(jù)頁面空間,無法響應(yīng)點(diǎn)擊事件。


          .hide{
           visibility: hidden;
          }
          

          ( 四 ) transform: scale(0);

          ( 1 ) zoom: 0.1; transform: scale(0);

          特點(diǎn):元素不可見,IE 6 7 9 不占據(jù)頁面空間,IE8 谷歌 火狐 歐朋 等瀏覽器占據(jù)空間,無法響應(yīng)點(diǎn)擊事件。


          .hide{
           zoom: 0.1;
           transform: scale(0);
           -webkit-transform: scale(0);
           -moz-transform: scale(0);
           -ms-transform: scale(0);
           -o-transform: scale(0); 
          }
          

          ( 2 ) position: absolute; zoom: 0.1; transform: scale(0);

          特點(diǎn):元素不可見,不占據(jù)頁面空間,無法響應(yīng)點(diǎn)擊事件。


          .hide{
           position: absolute;
           zoom: 0.1;
           transform: scale(0);
           -webkit-transform: scale(0);
           -moz-transform: scale(0);
           -ms-transform: scale(0);
           -o-transform: scale(0); 
          }
          

          ( 五 ) width: 0; height: 0; 配合overflow: hidden;

          特點(diǎn):元素不可見,不占據(jù)頁面空間,無法響應(yīng)點(diǎn)擊事件。但 padding值 和 margin值 依然存在,需要將內(nèi)外邊距都調(diào)整為0。

          .hide{
           display: inline-block;
           width: 0;
           height: 0;
           padding: 0;
           margin: 0;
           overflow: hidden; 
          }
          

          ( 六 ) position: absolute; left: -200%; 或者 top: -200%;等,父級(jí)需要相對(duì)定位,這種left top值可以根據(jù)具體的實(shí)際情況去定義

          特點(diǎn):元素不可見,不占據(jù)頁面空間,無法響應(yīng)點(diǎn)擊事件。


          . father{
           position: relative;
           overflow: hidden;
          }
          .hide{
           position: absolute;
           left: -200%;//或top: -200%; 
          }
          

          ( 七 ) clip-path: polygon(0px 0px,0px 0px,0px 0px,0px 0px)

          特點(diǎn):元素不可見,占據(jù)頁面空間,無法響應(yīng)點(diǎn)擊事件。


          .hide{
           float: left;
           width: 150px;
           margin: 20px;
           clip-path: polygon(0px 0px, 0px 0px, 0px 0px, 0px 0px); 
          }
          

          ( 八 ) margin: top | right | bottom | left ;父級(jí)添加overflow: hidden; (margin的值 一定要小于(子級(jí)的寬度加上邊距的總和的負(fù)數(shù)))

          特點(diǎn):元素不可見,不占據(jù)頁面空間,無法響應(yīng)點(diǎn)擊事件。


          .father{
           width: 400px;
           height: 400px;
           overflow: hidden;
          }
          .hide{
           display: inline-block;
           width: 200px;
           height: 200px;
           margin-left: -200px;
          }
          

          以上就是幾種隱藏元素的方法,我在以前的面試中,也碰到了面試官提出的一些關(guān)于隱藏元素css的對(duì)比,查閱了一些資料,做了以下整理:

          ( 一 ) display: none 和 visibility: hidden 的區(qū)別

          1. 占據(jù)頁面空間( display: none 將元素隱藏后,在頁面是是不占有空間位置的,而visibility: hidden 將元素隱藏后,還保留著元素大小的空間位置 ) ;

          2. display: none 影響了 reflow和repaint(回流與重繪),而visibility: hidden并沒有影響

          3. 某個(gè)模塊添加了display: none; 它下面的任何子級(jí)都會(huì)被隱藏,而添加了visibility: hidden,子級(jí)一旦有添加visibility: visible的css,該子級(jí)將不會(huì)被隱藏。

          ( 二 ) display: none 和 opacity: 0的區(qū)別

          1. 占據(jù)頁面空間( display: none 將元素隱藏后,在頁面是是不占有空間位置的,而opacity: 0 只是改變了元素的透明度將其隱藏,還保留著元素大小的空間位置 ) ;

          2. display: none 不會(huì)被子類繼承,但是子類一樣不會(huì)顯示。 opacity: 0 會(huì)被子類繼承,但不能像visibility的屬性一樣,給子類添加opacity:1,并不能將子類顯示。

          3. css3 transition 屬性對(duì)display:none 并無效果,但對(duì)opacity 則有效果。(附加一句,對(duì)visibility: hidden也無效果)

          xcel表格中不需要顯示的行或列,我們都是隱藏起來,需要時(shí)再取消隱藏。

          表格中是這樣設(shè)置隱藏的:

          是不是比隱藏更方便。它是使用了Excel中的組合功能( 數(shù)據(jù) - 創(chuàng)建組)。如下圖所示:

          組合功能創(chuàng)建有2種方式:

          手工創(chuàng)建:選取明細(xì)列(匯總列不選),數(shù)據(jù) - 創(chuàng)建組

          自動(dòng)創(chuàng)建:選取整個(gè)表格 - 自動(dòng)創(chuàng)建分級(jí)顯示。需要注意的是,匯總的行一定要有公式引用明細(xì)的行或列,如:

          G3=SUM(C3:F3)

          C3=SUM(C4:C8)

          恒企六大會(huì)計(jì)神器護(hù)航

          1、智能考試系統(tǒng) ;2、大數(shù)據(jù)學(xué)習(xí)系統(tǒng)

          3、會(huì)答APP系統(tǒng); 4、線上直播平臺(tái)

          5、平臺(tái)實(shí)訓(xùn)系統(tǒng); 6、報(bào)稅實(shí)訓(xùn)系統(tǒng)

          恒企zuixin課程免費(fèi)試聽

          申請(qǐng)方式:微信shhengqi回復(fù)“我要試聽+姓名+電話+地區(qū)”即可

          你可以先測試下你適不適合從事會(huì)計(jì)工作

          http://m.hengqijy.com/Test.html?hqtg_gyh-mt_hqtg

          溫馨貼士:為不影響你的學(xué)業(yè),來校時(shí)請(qǐng)先電話或QQ咨詢,方便我校安排相關(guān)的課程咨詢老師為你解答


          主站蜘蛛池模板: 亚洲一区二区三区电影| 亚洲国产精品一区二区九九| 国产一区二区三区小向美奈子 | 精品国产一区二区三区AV| 国产av天堂一区二区三区| 呦系列视频一区二区三区| 国产精品女同一区二区| 黄桃AV无码免费一区二区三区| 日本精品一区二区三区视频 | 国产天堂在线一区二区三区| 国产在线乱子伦一区二区| 日韩欧国产精品一区综合无码| 一区二区不卡久久精品| 国产一区二区三区免费视频| 国产福利酱国产一区二区| 偷拍激情视频一区二区三区| 久久一区二区三区精品| 久久久久久人妻一区精品| 国产精品区一区二区三在线播放 | 国产在线精品一区二区在线观看| 国产a久久精品一区二区三区| 日本v片免费一区二区三区| 无码午夜人妻一区二区不卡视频 | 无码一区二区三区中文字幕| 日韩国产免费一区二区三区| 中文字幕日韩一区二区不卡| 精品欧洲av无码一区二区三区| 日韩精品无码一区二区三区免费 | 狠狠综合久久AV一区二区三区| 精品人妻一区二区三区毛片| 中文字幕精品无码一区二区三区| 国产一区二区三区久久精品| 亚洲国产精品一区| 中文字幕av日韩精品一区二区| 亚洲AV无码片一区二区三区 | 无码av不卡一区二区三区| 亚洲中文字幕丝袜制服一区 | 人成精品视频三区二区一区 | 色婷婷AV一区二区三区浪潮| 久久99国产精一区二区三区| 亚洲一区二区三区在线|