I want to apply two colors to one cell and separate them diagonally. I know that there is a function to add gradients in Excel, but I haven't found a way to set the strength of the color stop.
Asked
Active
Viewed 1.6k times
2
-
I don't believe it's possible without using complicated VBA... – Kinnectus Oct 22 '18 at 07:35
-
@Kinnectus, I would love to know how it could be achieved, even if that means use of complicated VBA, please! – Bharat Anand Oct 25 '18 at 00:39
-
@BharatAnand just letting you know that I was able to achieve it. I posted an answer myself. – Victor O Oct 25 '18 at 18:11
2 Answers
2
So after playing around a little bit, I figured out how to do it. My mistake was that I only added two color stops, when I should've added 4 color stops, in order to remove the color gradient. The gradient is being automatically added to create a smooth color transition between two colors. If you make the color stop distance between two colors as small as possible, you won't see a color gradient.
Here is my code:
With Selection.Interior
.Pattern = xlPatternLinearGradient
.Gradient.Degree = 225
.Gradient.ColorStops.Clear
End With
With Selection.Interior.Gradient.ColorStops.Add(0)
.Color = RGB(255, 0, 0)
.TintAndShade = 0
End With
With Selection.Interior.Gradient.ColorStops.Add(0.49999999)
.Color = RGB(255, 0, 0)
.TintAndShade = 0
End With
With Selection.Interior.Gradient.ColorStops.Add(0.5)
.Color = RGB(0, 255, 0)
.TintAndShade = 0
End With
With Selection.Interior.Gradient.ColorStops.Add(1)
.Color = RGB(0, 255, 0)
.TintAndShade = 0
End With
And here is how it looks like: Two colored Excel cell
Victor O
- 41
- 1
- 1
- 4
1
Create an image in Photoshop or similar, resize and insert into cell.
g-mouse18
- 11
- 2
-
I already solved the problem programmatically. Using images would not allow me to specify the colors dynamically. – Victor O May 17 '20 at 04:09
-
This is a suitable alternative to using VB or programming, you can even do it in MS Paint! – JDuarteDJ Nov 15 '22 at 14:16
