RGB kleurencode invoeren, automatisch cel opvullen

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

Anoniem: 679196

Topicstarter
Mijn vraag:

Ik probeer een vba code te maken die na invoering van de rgb code diezelfde cel die kleur geeft.
Dit zoals te zien is op de volgende link:

https://www.dropbox.com/s...v4ht/Werkmap%202.png?dl=0

Het volgende is me al wel gelukt:

https://www.dropbox.com/s...b65i/Werkmap%201.png?dl=0

Dit met de volgende code:

Sub Macro3()
lastrow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To lastrow
R = Range(Cells(i, 1), Cells(i, 1)).Value
G = Range(Cells(i, 2), Cells(i, 2)).Value
B = Range(Cells(i, 3), Cells(i, 3)).Value
Range(Cells(i, 1), Cells(i, 3)).Interior.Color = RGB(R, G, B)

Next i
End Sub


Nu moet ik de rgb code dus invullen in 3 cellen, graag zou ik dit in 1 cel willen doen, kan iemand mij hier bij helpen?

Alvast bedankt!


...

Relevante software en hardware die ik gebruik: EXCEL 2007
...

Alle reacties


Acties:
  • 0 Henk 'm!

  • Orion84
  • Registratie: April 2002
  • Nu online

Orion84

Admin General Chat / Wonen & Mobiliteit

Fotogenie(k)?

Er is vast een formule (of VBA code) te verzinnen om uit een cel met waarde R;G;B (of iets dergelijks) de R, G en B los te weken. Zo zijn er volgens mij zoekfuncties waarmee je (vanaf links zoekend en vanaf rechts zoekend) de posities van de scheidingstekens kan vaststellen en daarna zijn er formules om substrings uit een cel te trekken. Die kan je dan aan je drie variabelen toekennen.

Wat heb je op dat vlak zelf al geprobeerd?

[ Voor 43% gewijzigd door Orion84 op 23-08-2017 17:00 ]

The problem with common sense is that it's not all that common. | LinkedIn | Flickr


Acties:
  • +1 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Gebruik de functie split() om een tekst om te zetten in een array van substrings. Bijvoorbeeld
code:
1
2
arrColor = Split(Target.Value, ",")
Target.Interior.Color = RGB(arrColor(0), arrColor(1), arrColor(2))

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Anoniem: 679196

Topicstarter
Mijn kennis in VBA is helaas niet zo heel groot. maar als ik de code van Lustucru probeer krijg ik een foutmelding in de regel met Target. De volgende code heb ik gebruikt

Sub Macro3()
lastrow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To lastrow

ArrColor = Split(Target.Value, ",")
Target(Cells(i, 1), Cells(i, 1)).Interior.Color = RGB(ArrColor(0), ArrColor(1), ArrColor(2))
Next i
End Sub