Я очень плохо знаком с макросом. Тем не менее, я нашел макрос на этом сайте, чтобы скрыть строки со значением False. Я отредактировал макрос, чтобы снова отобразить строку, и он работал нормально. Проблема в том, что я хочу, чтобы он работал для многих строк, поэтому я делаю его с A1 до A10000. Когда я прячусь, он работает нормально, но когда я его показываю, программа Excel перестает работать (я использую Mac). И что же мне делать?

Sub HiddeA()
Dim A As Range
Set A = Range("A1:A10000")
A.EntireRow.Hidden = False
For i = 1 To 10000
    If Cells(i, 1).Value <> "" And Cells(i, 1).Value = False Then
        Cells(i, 1).EntireRow.Hidden = True
    End If
Next i
End Sub


Sub ShowA()
Dim A As Range
Set A = Range("A1:A10000")
A.EntireRow.Hidden = True
For i = 1 To 10000
    If Cells(i, 1).Value <> Cells(i, 1).Value = False Then
        Cells(i, 1).EntireRow.Hidden = False
    End If
Next i
End Sub

1 ответ1

1

Sub ShowA() должен быть таким:

Sub ShowA()
For i = 1 To 10000
    If Cells(i, 1).Value <> "" And Cells(i, 1).Value = False Then
        Cells(i, 1).EntireRow.Hidden = False
    End If
Next i
End Sub

Вам не нужно выдавать строку A.EntireRow.Hidden = True потому что скрывает каждый ряд.

Кроме того, вы забыли двойные квоты и на and на линии

If Cells(i, 1).Value <> Cells(i, 1).Value = False Then

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .