需求:在實(shí)際需求中锚贱,經(jīng)常會(huì)對(duì)Excel表進(jìn)行操作呀枢,如在指定Sheet后新增一個(gè)Sheet,表格的列寬設(shè)置等等
解決方案:本例使用Invoke VBA 纵朋,來(lái)滿足上述需求(當(dāng)然也可以使用powershell乔宿,python)
模擬環(huán)境:一張AddNewSheet.xlsx的表膳汪,此表中有聽(tīng)唯蝶、說(shuō)、讀遗嗽、寫(xiě)四個(gè)Sheet(Sheet的順序是隨機(jī)的)
需要在①Sheet(“聽(tīng)”)后插入一個(gè)名為“中期總結(jié)”的Sheet,并拷貝Sheet(“聽(tīng)”)中A:B列數(shù)據(jù)至Sheet(“中期總結(jié)”)粘我;
? ? ? ? ? ?②在最后一個(gè)Sheet后插入一個(gè)名為“完成結(jié)業(yè)”的Sheet,并拷貝Sheet(“寫(xiě)”)中B:C列的數(shù)據(jù)至Sheet(“完成結(jié)業(yè)”)中;
? ? ? ? ? ?③將所有Sheet中的單元格按內(nèi)容進(jìn)行自動(dòng)調(diào)整列寬痹换。
操作步驟:
(1)新建文本文件征字,命名為AddSheets.txt,寫(xiě)入VBA代碼,代碼如下:
注意:如果VBA中有中文時(shí)娇豫,將文本文件以ANSI文件編碼格式保存匙姜,防止亂碼報(bào)錯(cuò)。
(2)Uipath調(diào)用VBA,
? ? ? ? ?InvokeVBA需要在Excel Application Cope中調(diào)用冯痢,EntryMethodName填寫(xiě)VBA Sub或Function名
(3)運(yùn)行驗(yàn)證
總結(jié):對(duì)于Excel表的數(shù)據(jù)操作可以使用多種方式進(jìn)行操作氮昧,VBA是一種解決思路。