2

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.

The first cell is what it looks like now and the second one is what I need

Ahmed Ashour
  • 2,350
  • 2
  • 14
  • 21
Victor O
  • 41
  • 1
  • 1
  • 4

2 Answers2

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