删除单元格边框

我无法使用Applescript删除数据表中的单元格边框。 我开始使用包含C15:K31数据的电子表格。 每个单元格都有一个边框。 我想要做的就是在索引4(D列)插入一列,然后设置D列中的每个单元格都没有任何边框。 我包括一个重复查看列D中的每个单元格,但理想情况下,我会简单地删除格式一次,没有重复。

有什么想法吗? 我的代码如下:

告诉应用程序“Microsoft Excel”

activate workbook try set maxCount to count of sheets of active workbook set sheetCounter to 1 repeat maxCount times activate object worksheet sheetCounter set theWorksheetName to name of worksheet sheetCounter of active workbook if theWorksheetName contains "gap" then insert into range column 4 of active sheet set column width of column 4 of active sheet to 7.5 set color index of interior object of column 4 to 0 set startFormatHere to range "D1" of active sheet set nextRow to 1 repeat 20 times set formatCell to (get offset startFormatHere row offset nextRow) set formatHere to (get address of formatCell) set cellRange to range formatHere 

– 下面的尝试没有尝试去除边界线

  --clear contents range "D2" of active sheet of active workbook --tell border object of range "D2" --set {line style, line weight, weight, visible} to {None, 0, 0, false} --end tell --set border of range "D2" to false --set weight of (get border of cellRange which border edge bottom) to None --set line style of border object of range "D2" to line style none --set line weight of cellRange to 0 set nextRow to nextRow + 1 end repeat end repeat set sheetCounter to sheetCounter + 1 else set sheetCounter to sheetCounter + 1 end if end repeat end try 

结束告诉

你需要get border命令 – > get border (a range) which border (an enumeration) ,可以是下列之一:

内部水平,内部垂直,对angular线向下,对angular线向上,边缘底部,边缘左边缘,右边缘,边缘顶部,边框底部,左边框,右边框,边框顶部


 tell application "Microsoft Excel" activate workbook set maxCount to count of sheets of active workbook repeat with sheetCounter from 1 to maxCount activate object worksheet sheetCounter set theWorksheetName to name of worksheet sheetCounter of active workbook if theWorksheetName contains "gap" then insert into range column 4 of active sheet set column width of column 4 of active sheet to 7.5 set color index of interior object of column 4 to 0 set myRange to range "D1:D20" of active sheet set myBorders to {border top, border bottom, border left, border right} repeat with i from 1 to 4 set theBorder to get border myRange which border (item i of myBorders) set line style of theBorder to line style none end repeat end if end repeat end tell