• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Conditionele opmaak

Status
Niet open voor verdere reacties.

Guidolavespa

Gebruiker
Lid geworden
1 dec 2001
Berichten
152
Wie kan mijn helpen?

Ik wenst een condiionele opmaak te maken via code.
iets zoals:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$G$9" Then

' indien kleiner dan vandaag - 1 jaar > rood
If Range("J7").Text < Date - 365 Then
Range("J7").Select
'rood
Selection.Interior.ColorIndex = 3
Range("J5").Value = "UIT GARANTIE!"
Range("G9").Activate
Else

'groen
'Range("J7").Select
'Selection.Interior.ColorIndex = 4
'Range("J5").Text = "GARANTIE"
'Range("G9").Activate
End If
End If
End Sub
 
Code:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  If Target.Address = "$G$9" Then
  ' indien kleiner dan vandaag - 1 jaar > rood
    If Range("J7") < Date - 365 Then
      'rood
      Range("J7").Interior.ColorIndex = 3
      Range("J5") = "UIT GARANTIE!"
      Range("G9").Activate
    Else
      'groen
      Range("J7").Interior.ColorIndex = 4
      Range("J5") = "GARANTIE"
      Range("G9").Activate
    End If
  End If
End Sub
 
Met welke versie van Excel werk je, want in XP kan ik de fout niet simmuleren.
 
Terug Excel 97, u weet wel u was de redder in nood voor mijn probleem van verleden week;
 
De code getest op een lege map werkt wel!

Het moet ergens zitten daar waar in cel J7 een samengevoegde cel is met K7 en/of in de deze cel wordt via een formule de waarde bekomen.
 
Geplaatst door Guidolavespa
Terug Excel 97, u weet wel u was de redder in nood voor mijn probleem van verleden week;
Sorry hoor, maar ik hou geen lijstje bij van wie met welke versie werkt ;)
Geplaatst door Guidolavespa
Het moet ergens zitten daar waar in cel J7 een samengevoegde cel is met K7 en/of in de deze cel wordt via een formule de waarde bekomen.
Noch de samengevoegde cel, noch een formule geeft bij mij enig probleem. Ik kan alleen maar een fout creëren in de macro als ik in J7 een foutcode plaats bijv. met =1/0

Kan je misschien eens (een deel van) je document hier posten.
 
Ik zie al waar de fout ligt.

Als de formule niet tot een antwoord komt krijg ik in de cel J7 #N/B foutmelding, anders werkt de code perfect.
hoe die opvangen?
 
Wijzig de fiormule in:

=ALS(ISFOUT(formule);"";formule)

en vervang 'formule' twee maal door jouw huidige formule.

Wijzig best de macro ook zodat een blanco cel niet als datum wordt beschouwd:
Code:
  If Target.Address = "$G$9" And _
    Range("J7") <> "" Then
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan