range.Borders(Excel.XlBordersIndex.xlEdgeLeft).LineStyle = Excel.XlLineStyle.xlLineStyleNone
range.Borders(Excel.XlBordersIndex.xlEdgeRight).LineStyle = Excel.XlLineStyle.xlLineStyleNone
range.Borders(Excel.XlBordersIndex.xlEdgeTop).LineStyle = Excel.XlLineStyle.xlLineStyleNone
range.Borders(Excel.XlBordersIndex.xlEdgeBottom).LineStyle = Excel.XlLineStyle.xlLineStyleNone
range.Borders(Excel.XlBordersIndex.xlInsideHorizontal).LineStyle = Excel.XlLineStyle.xlLineStyleNone
range.Borders(Excel.XlBordersIndex.xlInsideVertical).LineStyle = Excel.XlLineStyle.xlLineStyleNone
elimina los bordes alrededor de las células y entre las células (a través de xlInsideHorizontal
y xlInsideVertical
). Si espera bordes diagonales, incluya xlDiagonalDown
y xlDiagonalUp
.
De acuerdo, el código anterior era muy detallado. Lo siguiente debe hacerlo también:
For Each border in range.Borders
border.LineStyle = Excel.XlLineStyle.xlLineStyleNone
Next
Ver: http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.borders.aspx
EDIT:
Al revisar la página de MSDN, me pregunto si éste revestimiento podría hacerlo también:
range.Borders.LineStyle = Excel.XlLineStyle.xlLineStyleNone
Sería muy lento si el rango ... es demasiado grande ... Entonces, ¿puede hacer esto para toda la gama a la vez? –
Debe ser muy rápido ya que no está iterando sobre cada celda como en su muestra. ¿Lo intentaste? – VVS
Supongo que es similar a como estamos iterando sobre el borde de cada celda ... Quiero decir que tu solución parece buena, pero ¿no hay un método directo para toda la gama? Creo que debe haber uno? –