Подтвердите, что ввод был найден, используя текстовое поле - PullRequest
0 голосов
/ 07 января 2019

Я пытаюсь удалить несколько тегов из основного списка, и у меня возникают проблемы с частью подтверждения. Мне удалось заставить весь процесс удаления работать, но у меня возникли проблемы при попытке подтвердить, что теги действительно были удалены.

У меня есть 2 текстовых поля: одно, где пользователь вводит свои данные, а другое показывает результаты. Я хотел бы, чтобы второй показывал либо «Предмет был удален», либо «Предмет не найден».

Я не могу понять, как это сделать.

Вот мой код:

Private Sub BtnSubmit_Click()
    TxtResult.Value = ""
    Multi_FindReplace
End Sub

Public Sub Multi_FindReplace()
    Number() = Split(TxtNumbers.Text, vbNewLine)

    'Loops to find the asset tags through the list
    For x = LBound(Number()) To UBound(Number())
        'Confirms the Asset Tag is 7 characters
        If Len(Number(x)) = 7 Then
            For Each sht In ActiveWorkbook.Worksheets
                'Deletes the actual Asset Tag from the list
                sht.Cells.Replace What:=Number(x), Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False
            Next
        Else
            TxtResult.Value = TxtResult.Value & vbNewLine & "Invalid C#"
        End If
    Next
End Sub

Public Sub Results()
    If TxtResult.Value = "" Then
        TxtResult.Value = Number(x) & " Was Removed!"
    Else
        TxtResult.Value = TxtResult.Value & vbNewLine & Number(x) & " Was Removed! "
    End If
End Sub

Спасибо!

1 Ответ

0 голосов
/ 07 января 2019

Вы должны публично объявить x как целое число и ваш массив number () в верхней части вашего модуля. Затем вызовите подпункт «Результаты» после успешного удаления тега ресурса со всех листов ActiveWorkbook.

Я не тестировал код, но он должен выглядеть следующим образом:

Public x as Integer
Public Number()
[...]

If Len(Number(x)) = 7 Then
        For Each sht In ActiveWorkbook.Worksheets
            'Deletes the actual Asset Tag from the list
            sht.Cells.Replace What:=Number(x), Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False            
        Next
        Results
    Else

Подробнее см. Файл справки «Вызов вспомогательных и функциональных процедур».

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