Opgelost hinderlijk "uitgrijzen" blijft staan

  • Onderwerp starter Onderwerp starter LRR
  • Startdatum Startdatum
Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

LRR

Gebruiker
Lid geworden
27 jul 2023
Berichten
35
Hallo forum lezers,

In een programma dat meetgegevens verwerkt wordt voor de start eerst alle kolommen waar deze gegevens moeten komen te staan eerst de inhoud van alle cellen gewist en de achtergrond kleur wordt op wit gezet.
Ik gebruik hiervoor de code:


Code:
Range("d2:d" & Format(reset_Pnts)).Select  'wissen gemeten status 197
Selection.ClearContents
Range("d2:d" & Format(reset_Pnts)).Select  'wissen kleur (wordt wit) achtergrond cel
Selection.Interior.Color = RGB(255, 255, 255)

De variabele reset_pnts heeft nu de waarde 3000. Dit werkt goed hierna zijn alle cellen in de kolom D leeg met de achtergrond kleur wit. Deze code wordt ook toegepast op meerdere kolommen, echter de kolom D is als laatste aan de beurt.
Als hierna het programma de nieuwe data naar binnen haalt dan zie je dat de achtergrond kleur van kolom D licht grijs is tot aan cel 3000. Is het programma klaar dan kan je met de cursor een andere kolom of cel kiezen en dan verdwijnt ook
de grijze kleur van de kolom D. Ik heb ook geprobeerd om kolom C als laatste met de bovengenoemde code te verwerken en dan blijft deze kolom grijs. Hoe kan ik van dit hinderlijke gedrag afkomen?

Graag jullie reactie met vriendelijke groet,

Loek
 
Probeer het eens zo:
Code:
    With Range("d2:d" & reset_Pnts)
        .ClearContents
        .Interior.Color = vbWhite
    End With
 
of xlnone ipv die vbwhite
 
Code:
With cells(2,4).resize(reset_Pnts)
  .ClearContents
  .Interior.Color = -4142
End With
 
Hallo snb,

De code die jij opgaf werkt inderdaad goed. Ik had deze ingevoerd voor de laatste kolom en nu blijft deze wit van kleur en de kolom die er voor zat wordt nu grijs. Dus nu even voor alle kolommen dezelfde code toepassen.
Ik weet alleen nog niet of dit allemaal tussen één With en End With kan of dat ik per kolom dit toe moet passen, maar daar kom ik wel uit.

Wel blijft de vraag hoe ik daar nu zelf kon achter komen ik dacht dat de code die ik toegepast had juist bedoeld was voor leeg maken cellen maar nu blijken er ook andere mogelijkheden te zijn.

In ieder geval bedankt voor je snelle reactie met vriendelijke groet,

Loek
 
Dat je cellen grijs werden komt doordat je ze selecteerde, in mijn en snb's code wordt geen range geselecteerd dus wordt er ook geen range grijs.
Als je dit op een aaneengesloten gebied wilt toepassen, bijvoorbeeld D2:F4000, dan kan dat met
Code:
[COLOR=#3E3E3E]With Range("D2:F" & reset_Pnts)[/COLOR]
Voor niet aaneengesloten gebieden:
https://learn.microsoft.com/en-us/o...pts/cells-and-ranges/refer-to-multiple-ranges
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan