Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

aktieve cel laten opvallen dmv. kleurwijziging

752 views
Skip to first unread message

marc

unread,
Jan 29, 2002, 12:50:29 PM1/29/02
to
Bestaat er een manier om een willekeurige cel van kleur te laten veranderen
als de cursor in de cel staat.
Dus de aktieve cel als het ware laten oplichten uit een saai formulier.
In deze cellen staat tekst, en deze zou zichtbaar moeten blijven.
Vermoedelijk kan dit via een VBA code, maar ik ben terzake onkundig.
Van toepassing op iedere cel in het werkblad.

Dank vooraf, Marc

Luc Heyndrickx

unread,
Jan 29, 2002, 1:05:41 PM1/29/02
to
Hallo marc,

Plak volgende code in uw visual basic editor :

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Excel.Range)
Static OldCell As Range

If Not OldCell Is Nothing Then
OldCell.Interior.ColorIndex = xlColorIndexNone
End If

Target.Interior.ColorIndex = 6

Set OldCell = Target


End Sub

Succes

Luc


"marc" <thijs...@skynet.be> schreef in bericht
news:eX#6f2OqBHA.1036@tkmsftngp04...

marc

unread,
Jan 29, 2002, 2:37:41 PM1/29/02
to
Met dank, maar... als onkundige ben ik zo tewerk gegaan:
rechts geklikt op bladtab / gekozen voor "programmacode weergeven"
De code gekopiëerd van -Private Sub...tot...End Sub- en geplakt.
bestandje een naam gegeven en opgeslagen.
En het wil natuurlijk niet werken bij mij.
Als ik terug in de pragrammacode zie kan ik kiezen uit
(algemeen) of worksheet.
Als ik "worksheet" kies komt volgende melding:
"Compileerfout: kies lijstscheidingsteken of )"
Als ik "algemeen" kies gebeurt er niets.
Wat doe ik verkeerd?

"Luc Heyndrickx" <Luc.Hey...@wanadoo.be> schreef in bericht
news:a36omg$k5n$1...@scavenger.euro.net...

Roland Greve

unread,
Jan 29, 2002, 3:32:28 PM1/29/02
to
Hallo Marc,

Het probleem met kopiëren direct uit een newsreader/browser is dat de
regels vaak afgebroken worden op essentiële plaatsen. Alles wat in de
hieronderstaande code door een lege regel gescheiden is moet in de VBE
op 1 regel staan in de code van Luc/Chip. Dus mochten er twee
code-regels onder elkaar staan verwijder dan de 'page-break' in de VBE.

Van begin af aan:
Open het bestand -> ALT+F11 -> Dubbelklik 'ThisWorkbook' in het
Project-venster en kopieer de volgende code:

Private Sub Workbook_SheetSelectionChange (ByVal Sh As Object, ByVal
Target As Excel.Range)

Static OldCell As Range

If Not OldCell Is Nothing Then

OldCell.Interior.ColorIndex = xlColorIndexNone

End If

Target.Interior.ColorIndex = 6

Set OldCell = Target

End Sub

Ik hoop dat ik duidelijk was.

Groet,
Roland

Luc Heyndrickx

unread,
Jan 29, 2002, 3:56:44 PM1/29/02
to
Marc,

U doet het bijna juist. Alleen met het kopiëren is er een fout ingeslopen.

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Excel.Range)

Moet op één regel komen. Hier heeft de computer slim willen doen, door
automatische regelafbreking.

Luc

"marc" <thijs...@skynet.be> schreef in bericht

news:O0KBayPqBHA.2540@tkmsftngp04...

marc

unread,
Jan 30, 2002, 2:06:13 PM1/30/02
to
Nu wil het lukken, mooi.
Nog 1 vraagje, dan is de zaak gesloten.

Als de cellen al een achtergrondkleur hebben verdwijnt deze kleur na een
selectie.
Kan het zodanig ingesteld worden dat de basiskleuren behouden blijven?

Marc


Roland Greve

unread,
Jan 31, 2002, 3:00:35 AM1/31/02
to
Hallo Marc,

Onderstaande code laat cellen die al een achtergrondkleur
hebben ongemoeid:

Private Sub Workbook_SheetSelectionChange(ByVal _


Sh As Object, ByVal Target As Excel.Range)

Static OldCell As Range

If Target.Interior.ColorIndex = xlColorIndexNone Then
Target.Interior.ColorIndex = 6
End If



If Not OldCell Is Nothing Then

If OldCell.Interior.ColorIndex = 6 Then


OldCell.Interior.ColorIndex = xlColorIndexNone
End If

End If



Set OldCell = Target

End Sub

Groet,
Roland

>.
>

marc

unread,
Jan 31, 2002, 2:33:01 PM1/31/02
to

Sorry, maar het wil weer niet lukken. (...een cursus VBA begint zich hier
voor mij op te dringen).
De 2 eerste lijnen heb ik achter elkaar gezet, de andere heb ik zo laten
staan.
Deze 2 keuzes komen er automatisch:
- linker keuze: (Algemeen)
- rechter keuze: Workbook_sheet SelectionChange
Maar het wil niet lukken, wat ik ook probeer:
andere lijnen ook achter elkaar enz...
wat doe ik nog fout?
Marc.


"Roland Greve" <rolan...@yahoo.com> schreef in bericht
news:1107a01c1aa2d$5d0df2d0$35ef2ecf@TKMSFTNGXA11...

Roland Greve

unread,
Feb 1, 2002, 5:54:38 AM2/1/02
to
Hallo Marc,

Ik heb je een voorbeeld-bestand gemailed.

Groet,
Roland

>.
>

marc

unread,
Feb 1, 2002, 1:29:16 PM2/1/02
to

> Ik heb je een voorbeeld-bestand gemailed.
> Groet,
> Roland

nu lukt het wel, met dank, maar, dit was niet helemaal wat ik bedoelde.
Foutief uitgedrukt waarschijnlijk.
Als ik klik op een cel met een rode achtergrondkleur dan blijft deze rood en
wordt niet geel,
dit gebeurt wel als ik op een ongekleurde cel klik.
De gekleurde rode cel zou geel moeten worden bij klikken, maar zou de
oorspronkelijke kleur
rood moeten terug krijgen bij het verlaten van de cel.
Moest dit nog kunnen lukken....
Marc


Roland Greve

unread,
Feb 3, 2002, 10:36:59 AM2/3/02
to
Hallo Marc,

OK, als ik het nu wel goed begrepen heb, kun je deze macro van Tom
Ogilvy gebruiken (de oude code uit mijn voorbeeld-bestandje verwijderen
en onderstaande code invoegen):

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal _
Target As Excel.Range)

Static OldAddress As Range
Static OldAddress_Color As Integer

If Not OldAddress Is Nothing Then
OldAddress.Interior.ColorIndex = OldAddress_Color
End If

Set OldAddress = ActiveCell
OldAddress_Color = ActiveCell.Interior.ColorIndex

ActiveCell.Interior.ColorIndex = 6

End Sub

Groet,
Roland

marc

unread,
Feb 3, 2002, 11:15:13 AM2/3/02
to
Perfect, dit moest het zijn.
Bedankt, en nog eens bedankt.
Probleem opgelost, en zaak gesloten.
Marc

"Roland Greve" <rolan...@yahoo.com> schreef in bericht

news:3C5D591B...@yahoo.com...

0 new messages