View Single Post
 
Old 01-05-2022, 04:26 AM
Atuck88 Atuck88 is offline Windows 10 Office 2019
Novice
 
Join Date: Jan 2022
Posts: 2
Atuck88 is on a distinguished road
Default deleting a row in word table if a certain number of cells are empty and/or contain a certain value

I have this code (attached below) which will delete the rows in a word table if all the cell rows are empty.

However I have a table with eight columns, the first four of which will always contain text. The latter four contains data linked to an excel document.

The question is; how do I get the code to search through the latter four (data) columns and IF the columns are empty and/or contain a value (such as zero) THEN delete the row.

Any help will be much appreciated.

Thanks in advance



Code:
       Sub DeleteBlankRowsAndTablesInATable()
      Dim objCell As Cell
      Dim nRowIndex As Integer, nRows As Integer, nColumns As Integer, nColumnIndex As Integer
      Dim varCellEmpty As Boolean
     
      Application.ScreenUpdating = False
     
      If Selection.Information(wdWithInTable) = False Then
        MsgBox ("Put cursor inside a table first!")
        Exit Sub
      Else
        With Selection.Tables(1)
          nRows = .Rows.Count
          For nRowIndex = nRows To 1 Step -1
            varCellEmpty = True
            For Each objCell In .Rows(nRowIndex).Cells
              If Len(objCell.Range.Text) > 2 Then
                varCellEmpty = False
                Exit For
              End If
            Next objCell
              If varCellEmpty = True Then
                .Rows(nRowIndex).Delete
              End If
          Next nRowIndex
     
    
        End With
      End If
    
      Set objCell = Nothing
    
      Application.ScreenUpdating = True
    End Sub
Reply With Quote