繁体   English   中英

VB.Net:Excel单元格周围的所有边界

[英]VB.Net: All Borders Around Excel Cells

我试图在给定范围内的每个单元格周围放置边框。 我还没有找到通过研究做到这一点的方法。 我能够实现的创建边框的唯一方法是以下代码:

protoWorksheet.Range("A1:K1").BorderAround2(Excel.XlLineStyle.xlContinuous, Excel.XlBorderWeight.xlMedium, Excel.XlColorIndex.xlColorIndexAutomatic, Excel.XlColorIndex.xlColorIndexAutomatic)

视觉我想要什么: 在此处输入图片说明

此代码将在给定的连续范围内在每个单元格周围放置边框,在这种情况下,对于Sheet1,范围为C8:D8。

Option Strict On
Option Infer Off   
Imports System.IO
Imports System.Runtime.InteropServices
Imports Microsoft.Office.Interop.Excel    
Public Module RangeBorderSample
    Public Sub OpenExcelSimple()
        Dim proceed As Boolean = False
        Dim xlApp As Application = Nothing
        Dim xlWorkBooks As Workbooks = Nothing
        Dim xlWorkBook As Workbook = Nothing
        Dim xlWorkSheet As Worksheet = Nothing
        Dim xlWorkSheets As Sheets = Nothing
        Dim xlCells As Range = Nothing

        xlApp = New Application With {.DisplayAlerts = False, .Visible = True}
        xlWorkBooks = xlApp.Workbooks
        xlWorkBook = xlWorkBooks.Open(Path.Combine(
            AppDomain.CurrentDomain.BaseDirectory, "Excel1.xlsx"))

        xlWorkSheets = xlWorkBook.Sheets
        For index As Integer = 1 To xlWorkSheets.Count
            xlWorkSheet = CType(xlWorkSheets(index), Worksheet)
            If xlWorkSheet.Name = "Sheet1" Then
                proceed = True
                Exit For
            End If
            Marshal.FinalReleaseComObject(xlWorkSheet)
            xlWorkSheet = Nothing
        Next
        If proceed Then
            xlCells = xlWorkSheet.Range("C6:D8")
            PlaceBordersOnEachCell(xlCells)
        End If
    End Sub
    Private Sub PlaceBordersOnEachCell(pRange As Range)
        pRange.Cells.Borders.LineStyle = XlLineStyle.xlContinuous
    End Sub
End Module

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM