【问题标题】:Delete Blank Row in excel worksheet删除excel工作表中的空白行
【发布时间】:2014-03-14 06:19:03
【问题描述】:

我尝试使用代码从 excel 中删除空白行

Dim wb As New Workbook("d:\test\book1.xls")
Dim sheets As WorksheetCollection = wb.Worksheets
Dim sheet As Worksheet = sheets(0)
sheet.Cells.DeleteBlankRows()
wb.Save("d:\test\mybook.xls")

但是我遇到了语法错误。有人知道执行此操作所需的命名空间吗?

【问题讨论】:

    标签: asp.net vb.net excel


    【解决方案1】:

    试试

    ApplicationClass excel = new ApplicationClass();
    Microsoft.Office.Interop.Excel.Range cellToBeDeleted = (Range)excel.Cells[rowIndex, columnIndex];
    cellToBeDeleted.Delete();
    

    包括以下命名空间

    using Excel = Microsoft.Office.Interop.Excel;
    

    【讨论】:

    • 我需要删除所有空行。如果一行中的任何单元格具有值,那么我需要保留该行
    【解决方案2】:

    试试这个 - 将参考(来自 COM 部分)Microsoft Excel 对象库添加到您的项目中

      Imports Microsoft.Office.Interop.Excel
    
    Public Class Form1
    
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        delBlankRows("d:\test\book1.xls", 1)
    End Sub
    
    Private Sub delBlankRows(ByVal excelFileName As String, sheetIndex As Integer)
        Dim excel As Microsoft.Office.Interop.Excel.Application = New Microsoft.Office.Interop.Excel.Application
        Dim fileName = excelFileName
        Dim w As Workbook = excel.Workbooks.Open(fileName)
        Dim r As Range = w.Worksheets(sheetIndex).UsedRange.EntireRow.SpecialCells(XlCellType.xlCellTypeBlanks)
        r.Delete()
    
        w.Save()
        w.Close()
    End Sub
    
    End Class
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-31
      • 2022-01-03
      • 1970-01-01
      相关资源
      最近更新 更多