2011-08-07 46 views

Trả lời

17
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 

Xóa đường viền xung quanh ô và giữa các ô (qua xlInsideHorizontalxlInsideVertical). Nếu bạn mong đợi đường viền chéo, bao gồm xlDiagonalDownxlDiagonalUp.

Được rồi, mã ở trên rất dài dòng. Sau đây nên làm điều đó quá:

For Each border in range.Borders 
    border.LineStyle = Excel.XlLineStyle.xlLineStyleNone 
Next 

Xem: http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.borders.aspx

EDIT:

Trong khi tìm kiếm trên trang MSDN, Tôi tự hỏi nếu một trong lót này có thể làm điều đó quá:

range.Borders.LineStyle = Excel.XlLineStyle.xlLineStyleNone 
+0

Nó sẽ rất chậm nếu phạm vi .. là quá lớn .. Vì vậy, nó có thể làm cho toàn bộ phạm vi cùng một lúc? –

+0

Nó sẽ rất nhanh vì bạn không lặp qua tất cả các ô như trong mẫu của bạn. Bạn đã thử à? – VVS

+0

Tôi giả sử nó tương tự như chúng ta đang lặp qua biên giới của mỗi ô .. Tôi có nghĩa là giải pháp của bạn có vẻ tốt, nhưng không phải là có một phương pháp trực tiếp cho toàn bộ phạm vi? Tôi nghĩ rằng phải có một? –

1

Kiểm tra NamedRange.BorderAround Method.

Dim range As Excel.Range = sheet.Range("A2:K100") 
range.BorderAround(Excel.XlLineStyle.xlLineStyleNone, Excel.XlBorderWeight.xlThin, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic, missing) 

chúc mừng và chúc bạn may mắn!

+0

Nó quản lý các đường viền xung quanh phạm vi và không nằm trong phạm vi. Tôi đang sửa đổi câu hỏi để rõ ràng. –

0

tại sao tất cả các câu trả lời lại phức tạp như vậy?

cho toàn bộ sử dụng tấm ...

With .Cells 
     .Borders.LineStyle = xlLineStyleNone 
End With 

cho một phạm vi chỉ cần thay thế .Cells phù hợp

2

Range. ("A2: K100") Borders.LineStyle = xlNone

Các vấn đề liên quan