Требуется ошибка объекта при установке диапазона из двух ячеек - PullRequest
0 голосов
/ 12 июня 2019

Я пытаюсь преобразовать текстовый файл в лист Excel. Я должен удалить некоторые элементы данных и скопировать некоторые элементы данных в несколько столбцов. Чтобы удалить некоторые данные, я должен искать определенную строку (RUN). После того, как у меня есть этот адрес, я должен искать следующий RUN. Внутри этих двух строк я должен найти другую строку (NET) и удалить ее. Я должен делать это по всей таблице, так как это часто.

Вот код, который я пытаюсь использовать.

Dim name As String: name = "RUN"
Dim secondName As String: secondName = "NET"

Dim rgSearch As Range
' set the range to entire sheet
Set rgSearch = Range(Cells.Address)

Dim rgSearch1 As Range


Dim cell As Range
'search for first occurrence of RUN
Set cell = rgSearch.Find(name)
Dim tempCell As Range


' If not found then exit
If cell Is Nothing Then
    Debug.Print "Not found"
    Exit Sub
End If

' Store first cell address
Dim firstCellAddress As String, firstRow As Integer, secondRow As Integer
'store address of first result
firstCellAddress = cell.Address
secondRow = cell.Row


Do
    'save range to another range for next iteration
    Set tempCell = cell.Select
    'row variables are for alternate solution I tried
    firstRow = secondRow
    Debug.Print "Found: " & cell.Address
    ' search for next instance
    Set cell = rgSearch.FindNext(cell)
    ,set next instance
    secondRow = cell.Row

    Set rgSearch1 = Range(tempCell, cell).Select


Loop While firstCellAddress <> cell.Address

Я также пытался использовать

Set rgSearch1 = Range("B" & firstRow + 1 & ":B" & secondRow - 1).Select

вместо помещения ячеек в диапазон, но я получаю тот же результат. Вот почему эти переменные firstRow, secondRow есть.

С обеими идеями я получаю ошибку Object Required. Может кто-нибудь показать мне, пожалуйста, что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...