大江東去
單元格是Microsoft Excel /WPS表格中使用的術(shù)語,它是表格中行與列的交叉部分,是組成表格的最小單位,可拆分或者合并,單個(gè)數(shù)據(jù)的輸入和修改都是在單元格中進(jìn)行的。用好單元格,對(duì)工作效率的提升可不是一點(diǎn)點(diǎn)。
解決合并單元格的賦值問題
工作表中的B、C、D、J、L、M等列都有一些合并的單元格(如圖1),現(xiàn)需要將B5:O35的數(shù)據(jù)讀入數(shù)組Arr,希望合并單元格的數(shù)組數(shù)據(jù)是合并單元格的值,而不是空值。麻煩的是,現(xiàn)在并不允許更改表格結(jié)構(gòu)(涉及多部門的使用),自然也就無法對(duì)已合并的單元格進(jìn)行拆分,該如何對(duì)這些單元格進(jìn)行賦值呢?
利用VBA代碼可以解決這一問題,按下“Alt+F11”組合鍵,打開Microsoft Visual Basic for Applications編輯器窗口,依次選擇“插入/模塊”,在右側(cè)窗格插入一個(gè)空白模塊,在這里手工輸入或粘貼如下代碼(如圖2)。
上圖代碼中的“B37:O67”位置可以根據(jù)實(shí)際情況進(jìn)行設(shè)置,如果代碼檢查無誤,請(qǐng)選擇“文件/關(guān)閉并返回到Microsoft Excel”命令,返回Excel主界面,按下“Alt+F8”組合鍵,打開“宏”對(duì)話框,運(yùn)行宏即可(如圖3)。
巧妙提取不對(duì)應(yīng)單元格的數(shù)據(jù)
由于工作的原因,從單位的人事管理系統(tǒng)導(dǎo)出了各位同事的原始數(shù)據(jù)(如圖4),其中包含姓名、身份證號(hào)、公積金基數(shù)、社?;鶖?shù)等信息,現(xiàn)在需要將其中的“公積金基數(shù)”和“社?;鶖?shù)”兩項(xiàng)數(shù)據(jù)提取到一個(gè)名為“最終目標(biāo)”的工作表中,手工操作顯然是相當(dāng)麻煩,此時(shí)可以考慮利用公式解決這一問題。
選定B2單元格,在編輯框輸入或粘貼公式“=SUBSTITUTE(VLOOKUP(B$1&"*",INDIRECT($A2&"!a:a"),1,),B$1&":",)”,執(zhí)行之后可以得到“8546”的數(shù)據(jù),向右、向下拖拽填充柄,很快可以得到數(shù)據(jù)(如圖5)。