Codes werken maar half

Status
Niet open voor verdere reacties.

miso1995

Gebruiker
Lid geworden
25 mei 2018
Berichten
87
Beste allemaal,

Laatst heb ik een uitgebreide vraag neergezet over combineren van macro's.
Maar wellicht dat ik mijn probleem iets simpeler kan neerzetten. Dus hierbij poging 2.

Ik gebruik een macro die getriggerd wordt door celwijzigingen in een bepaald bereik.
In datzelfde bereik moet de macro voor elke regel controleren of de waarde van een bepaalde cel gelijk is aan "Question is not applicable."

Als dat zo is, dan moet de hele regel verborgen worden en bij een andere waarde moet de regel weer zichtbaar worden.
Code:
Dim KeyCells As Range
    Set KeyCells = Range("D27:E35")
    Dim c As Range
    If Not Application.Intersect(KeyCells, Range(Target.Address)) _
        Is Nothing Then
            ActiveSheet.Unprotect Password:="aifmdtest"
            KeyCells.Rows.AutoFit
            For Each c In Range("C27:C35")
                If c = "Question is not applicable." Then
                    c.EntireRow.Hidden = True
                Else
                    c.EntireRow.Hidden = False
                End If
            Next c
            ActiveSheet.Protect Password:="aifmdtest"
    End If

Deze code werkt voor de cellen C31 tot en met C35. Echter als de waarde van Cel C30 (binnen het bereik), de waarde "Question is not applicable." toont, wordt deze regel niet verborgen.

Hoe zou dit mogelijk kunnen zijn?

Groetjes,

Michel
 
Zonder voorbeeld document.
Wijzig:
If c = "Question is not applicable." Then

Eens in:
If c.Value = "Question is not applicable." Then

Die hele If constructie kan je overigens beter vervangen door dit:
c.EntireRow.Hidden = IIf(c.Value = "Question is not applicable.", True, False)
 
Laatst bewerkt:
Die hele If constructie kan je overigens beter vervangen door dit:
c.EntireRow.Hidden = IIf(c.Value = "Question is not applicable.", True, False)

Of door:

Code:
c.EntireRow.Hidden = c.Value = "Question is not applicable."
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan