Excel VBA Clearcontents метод класса Range не удалось - PullRequest
0 голосов
/ 04 декабря 2018

Приведенный ниже код взят из одного из первых макросов, которые я написал, поэтому я уверен, что есть гораздо лучшие способы сделать это.Этот код работал в течение многих лет и недавно начал давать сбой и отображать сообщение «Метод Clearcontents Range Range fail».

У меня есть 2 поля, в которых пользователь может ввести «X».Целью этого кода было очистить другие ячейки, когда пользователь вводит "X".Довольно просто и понятно.Любые предложения?

Это происходит на компьютере с Windows 7 и 32-разрядной операционной системой.

Спасибо за помощь ........

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Row = 19 And Target.Column = 2 And Len(Trim(Cells(19, 2))) > 0 Then
        Cells(19, 2) = UCase(Cells(19, 2))
        Cells(20, 2).ClearContents
    Else
        If Target.Row = 20 And Target.Column = 2 And Len(Trim(Cells(20, 2))) > 0 Then
            Cells(20, 2) = UCase(Cells(20, 2))
            Cells(19, 2).ClearContents
        End If
    End If

End Sub

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

Попробуйте:

Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
        If Target.Row = 19 And Target.Column = 2 And Len(Trim(Cells(19, 2))) > 0 Then
            Cells(19, 2) = UCase(Cells(19, 2))
            Cells(20, 2).ClearContents
        Else
            If Target.Row = 20 And Target.Column = 2 And Len(Trim(Cells(20, 2))) > 0 Then
                Cells(20, 2) = UCase(Cells(20, 2))
                Cells(19, 2).ClearContents
            End If
        End If
    Application.EnableEvents = True
End Sub
0 голосов
/ 04 декабря 2018

Попробуйте изменить Ячейки (20, 2) .ClearContents на Ячейки (20, 2) .value = "" .

Или попытайтесь квалифицироватьЯчейки объекта с именем рабочего листа: Worksheets ("putNameHere"). Ячейки (20, 2) .ClearContents .

Код имеет некоторые проблемы, но, возможно, он работает ...

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