excel - VBA - I cannot refresh a shape conditional formatting linked to a formulas after a cell refresh












0















I need your help.
context: I have a VBA to change colors (Green, Orange, Red) to several shapes linked to a % value. The values will change based on a list box. However if the % change, the formatting do not follow.



The macro is as the following - would you know how to "force" the refresh so that the Shape formatting follow any cell changes? below attempt to force it failed.



Private Sub Worksheet_Change(ByVal Target As Range)

EnableFormatConditionsCalculation = True
If Target.Address = "$K$16" Then
With Sheets("Resources").Shapes("Oval 1")
If Sheets("Resources").Cells(16, 11).Value < 0.95 Then
.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else If
Sheets("Resources").Cells(16, 11).Value > 0.99 Then
.Fill.ForeColor.RGB = RGB(0, 255, 0)
Else
.Fill.ForeColor.RGB = RGB(255, 153, 0)
End If
End If
End With
ElseIf Target.Address = "$L$16" Then
With Sheets("Resources").Shapes("Oval 2")
If Sheets("Resources").Cells(16, 12).Value < 0.95 Then
.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else If Sheets("Resources").Cells(16, 12).Value > 0.99 Then
.Fill.ForeColor.RGB = RGB(0, 255, 0)
Else
.Fill.ForeColor.RGB = RGB(255, 153, 0)
End If
End If
End With
Range("K16:W16").Calculate
End If

End Sub









share|improve this question

























  • Please fix your code formatting

    – Tim Williams
    Nov 20 '18 at 17:51











  • Hi Tim, thank you, I just tried to reedits it and place the 4 space as mentioned into the instructions - apologize, it is my first post and this means I spent hours on this problem turning it around that I came at the point I need an expert eyes to help me out ;) Thanks in advance.

    – Guillaume
    Nov 20 '18 at 18:00











  • I made a start for you - all you need to do now is fix the indenting...

    – Tim Williams
    Nov 20 '18 at 18:04











  • You maybe need to respond to the Calculate event if the changes are not being made directly in the cells you're monitoring

    – Tim Williams
    Nov 20 '18 at 18:07











  • How would you do that please?

    – Guillaume
    Nov 20 '18 at 18:14
















0















I need your help.
context: I have a VBA to change colors (Green, Orange, Red) to several shapes linked to a % value. The values will change based on a list box. However if the % change, the formatting do not follow.



The macro is as the following - would you know how to "force" the refresh so that the Shape formatting follow any cell changes? below attempt to force it failed.



Private Sub Worksheet_Change(ByVal Target As Range)

EnableFormatConditionsCalculation = True
If Target.Address = "$K$16" Then
With Sheets("Resources").Shapes("Oval 1")
If Sheets("Resources").Cells(16, 11).Value < 0.95 Then
.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else If
Sheets("Resources").Cells(16, 11).Value > 0.99 Then
.Fill.ForeColor.RGB = RGB(0, 255, 0)
Else
.Fill.ForeColor.RGB = RGB(255, 153, 0)
End If
End If
End With
ElseIf Target.Address = "$L$16" Then
With Sheets("Resources").Shapes("Oval 2")
If Sheets("Resources").Cells(16, 12).Value < 0.95 Then
.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else If Sheets("Resources").Cells(16, 12).Value > 0.99 Then
.Fill.ForeColor.RGB = RGB(0, 255, 0)
Else
.Fill.ForeColor.RGB = RGB(255, 153, 0)
End If
End If
End With
Range("K16:W16").Calculate
End If

End Sub









share|improve this question

























  • Please fix your code formatting

    – Tim Williams
    Nov 20 '18 at 17:51











  • Hi Tim, thank you, I just tried to reedits it and place the 4 space as mentioned into the instructions - apologize, it is my first post and this means I spent hours on this problem turning it around that I came at the point I need an expert eyes to help me out ;) Thanks in advance.

    – Guillaume
    Nov 20 '18 at 18:00











  • I made a start for you - all you need to do now is fix the indenting...

    – Tim Williams
    Nov 20 '18 at 18:04











  • You maybe need to respond to the Calculate event if the changes are not being made directly in the cells you're monitoring

    – Tim Williams
    Nov 20 '18 at 18:07











  • How would you do that please?

    – Guillaume
    Nov 20 '18 at 18:14














0












0








0








I need your help.
context: I have a VBA to change colors (Green, Orange, Red) to several shapes linked to a % value. The values will change based on a list box. However if the % change, the formatting do not follow.



The macro is as the following - would you know how to "force" the refresh so that the Shape formatting follow any cell changes? below attempt to force it failed.



Private Sub Worksheet_Change(ByVal Target As Range)

EnableFormatConditionsCalculation = True
If Target.Address = "$K$16" Then
With Sheets("Resources").Shapes("Oval 1")
If Sheets("Resources").Cells(16, 11).Value < 0.95 Then
.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else If
Sheets("Resources").Cells(16, 11).Value > 0.99 Then
.Fill.ForeColor.RGB = RGB(0, 255, 0)
Else
.Fill.ForeColor.RGB = RGB(255, 153, 0)
End If
End If
End With
ElseIf Target.Address = "$L$16" Then
With Sheets("Resources").Shapes("Oval 2")
If Sheets("Resources").Cells(16, 12).Value < 0.95 Then
.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else If Sheets("Resources").Cells(16, 12).Value > 0.99 Then
.Fill.ForeColor.RGB = RGB(0, 255, 0)
Else
.Fill.ForeColor.RGB = RGB(255, 153, 0)
End If
End If
End With
Range("K16:W16").Calculate
End If

End Sub









share|improve this question
















I need your help.
context: I have a VBA to change colors (Green, Orange, Red) to several shapes linked to a % value. The values will change based on a list box. However if the % change, the formatting do not follow.



The macro is as the following - would you know how to "force" the refresh so that the Shape formatting follow any cell changes? below attempt to force it failed.



Private Sub Worksheet_Change(ByVal Target As Range)

EnableFormatConditionsCalculation = True
If Target.Address = "$K$16" Then
With Sheets("Resources").Shapes("Oval 1")
If Sheets("Resources").Cells(16, 11).Value < 0.95 Then
.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else If
Sheets("Resources").Cells(16, 11).Value > 0.99 Then
.Fill.ForeColor.RGB = RGB(0, 255, 0)
Else
.Fill.ForeColor.RGB = RGB(255, 153, 0)
End If
End If
End With
ElseIf Target.Address = "$L$16" Then
With Sheets("Resources").Shapes("Oval 2")
If Sheets("Resources").Cells(16, 12).Value < 0.95 Then
.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else If Sheets("Resources").Cells(16, 12).Value > 0.99 Then
.Fill.ForeColor.RGB = RGB(0, 255, 0)
Else
.Fill.ForeColor.RGB = RGB(255, 153, 0)
End If
End If
End With
Range("K16:W16").Calculate
End If

End Sub






excel vba






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 20 '18 at 18:03









Tim Williams

85.6k96885




85.6k96885










asked Nov 20 '18 at 17:49









GuillaumeGuillaume

53




53













  • Please fix your code formatting

    – Tim Williams
    Nov 20 '18 at 17:51











  • Hi Tim, thank you, I just tried to reedits it and place the 4 space as mentioned into the instructions - apologize, it is my first post and this means I spent hours on this problem turning it around that I came at the point I need an expert eyes to help me out ;) Thanks in advance.

    – Guillaume
    Nov 20 '18 at 18:00











  • I made a start for you - all you need to do now is fix the indenting...

    – Tim Williams
    Nov 20 '18 at 18:04











  • You maybe need to respond to the Calculate event if the changes are not being made directly in the cells you're monitoring

    – Tim Williams
    Nov 20 '18 at 18:07











  • How would you do that please?

    – Guillaume
    Nov 20 '18 at 18:14



















  • Please fix your code formatting

    – Tim Williams
    Nov 20 '18 at 17:51











  • Hi Tim, thank you, I just tried to reedits it and place the 4 space as mentioned into the instructions - apologize, it is my first post and this means I spent hours on this problem turning it around that I came at the point I need an expert eyes to help me out ;) Thanks in advance.

    – Guillaume
    Nov 20 '18 at 18:00











  • I made a start for you - all you need to do now is fix the indenting...

    – Tim Williams
    Nov 20 '18 at 18:04











  • You maybe need to respond to the Calculate event if the changes are not being made directly in the cells you're monitoring

    – Tim Williams
    Nov 20 '18 at 18:07











  • How would you do that please?

    – Guillaume
    Nov 20 '18 at 18:14

















Please fix your code formatting

– Tim Williams
Nov 20 '18 at 17:51





Please fix your code formatting

– Tim Williams
Nov 20 '18 at 17:51













Hi Tim, thank you, I just tried to reedits it and place the 4 space as mentioned into the instructions - apologize, it is my first post and this means I spent hours on this problem turning it around that I came at the point I need an expert eyes to help me out ;) Thanks in advance.

– Guillaume
Nov 20 '18 at 18:00





Hi Tim, thank you, I just tried to reedits it and place the 4 space as mentioned into the instructions - apologize, it is my first post and this means I spent hours on this problem turning it around that I came at the point I need an expert eyes to help me out ;) Thanks in advance.

– Guillaume
Nov 20 '18 at 18:00













I made a start for you - all you need to do now is fix the indenting...

– Tim Williams
Nov 20 '18 at 18:04





I made a start for you - all you need to do now is fix the indenting...

– Tim Williams
Nov 20 '18 at 18:04













You maybe need to respond to the Calculate event if the changes are not being made directly in the cells you're monitoring

– Tim Williams
Nov 20 '18 at 18:07





You maybe need to respond to the Calculate event if the changes are not being made directly in the cells you're monitoring

– Tim Williams
Nov 20 '18 at 18:07













How would you do that please?

– Guillaume
Nov 20 '18 at 18:14





How would you do that please?

– Guillaume
Nov 20 '18 at 18:14












2 Answers
2






active

oldest

votes


















0














Try this:



Private Sub Worksheet_Calculate()

CheckFormat Me.Range("K16"), "Oval 1"
CheckFormat Me.Range("L16"), "Oval 2"

End Sub

Sub CheckFormat(valueRange As Range, shapeName As String)
Dim v, clr As Long
v = valueRange.Value

If Len(v) = 0 Then
clr = RGB(255, 255, 255) '<< EDIT: use white if no value
Else
If v < 0.95 Then
clr = RGB(255, 0, 0)
ElseIf v > 0.99 Then
clr = RGB(0, 255, 0)
Else
clr = RGB(255, 153, 0)
End If
End If
Me.Shapes(shapeName).Fill.ForeColor.RGB = clr
End Sub





share|improve this answer


























  • It worked out many thanks :) one more question if I might Tim - how would you make it than in case K16 is filled but L16 is empty, only Oval1 is refreshed and Oval2 would go white as ex. - just an embellishment if it could work.

    – Guillaume
    Nov 20 '18 at 19:03











  • See my edit above

    – Tim Williams
    Nov 20 '18 at 19:07











  • I cannot thank you enough - it work very well, thank you so much for that

    – Guillaume
    Nov 20 '18 at 19:41



















0














Worksheet_Change will be launched if any of cells will be changed manually by user. It will not be triggered if any of your formulas like RANDBETWEEN will bring new value.



You might be interested in reforging your routine to a VBA formula of a VOLATILE type. Click the link to follow some of the instructions. Long story short - you can place a special command into your User Defined Function so it will run each time something changes in your workbook. And that formula you could place into $K$16 cell.



Hope that helps.






share|improve this answer
























  • Thank you Roman - would you know how to place this volatile function into my macro above or do I really need a new module for it and if yes, how to call back to the $K$16 cell - the range is from K:16 - W:16 with each of them a dedicated shape for the formatting. Thank you

    – Guillaume
    Nov 20 '18 at 18:14











  • What exact formula do you have inside $K$16 cell? New UDF will be copying it's calculations and repeat your SUB code.

    – Roman Voronov
    Nov 20 '18 at 18:17











  • it refers to a calculation on another worksheets =IFERROR('Graph Data'!C303,"") and the C303 is having the following formulas : =IF('GM Track'!E3="Act",'GM Track'!E56/'GM Track'!E58,NA())

    – Guillaume
    Nov 20 '18 at 18:42













Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53398726%2fexcel-vba-i-cannot-refresh-a-shape-conditional-formatting-linked-to-a-formul%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









0














Try this:



Private Sub Worksheet_Calculate()

CheckFormat Me.Range("K16"), "Oval 1"
CheckFormat Me.Range("L16"), "Oval 2"

End Sub

Sub CheckFormat(valueRange As Range, shapeName As String)
Dim v, clr As Long
v = valueRange.Value

If Len(v) = 0 Then
clr = RGB(255, 255, 255) '<< EDIT: use white if no value
Else
If v < 0.95 Then
clr = RGB(255, 0, 0)
ElseIf v > 0.99 Then
clr = RGB(0, 255, 0)
Else
clr = RGB(255, 153, 0)
End If
End If
Me.Shapes(shapeName).Fill.ForeColor.RGB = clr
End Sub





share|improve this answer


























  • It worked out many thanks :) one more question if I might Tim - how would you make it than in case K16 is filled but L16 is empty, only Oval1 is refreshed and Oval2 would go white as ex. - just an embellishment if it could work.

    – Guillaume
    Nov 20 '18 at 19:03











  • See my edit above

    – Tim Williams
    Nov 20 '18 at 19:07











  • I cannot thank you enough - it work very well, thank you so much for that

    – Guillaume
    Nov 20 '18 at 19:41
















0














Try this:



Private Sub Worksheet_Calculate()

CheckFormat Me.Range("K16"), "Oval 1"
CheckFormat Me.Range("L16"), "Oval 2"

End Sub

Sub CheckFormat(valueRange As Range, shapeName As String)
Dim v, clr As Long
v = valueRange.Value

If Len(v) = 0 Then
clr = RGB(255, 255, 255) '<< EDIT: use white if no value
Else
If v < 0.95 Then
clr = RGB(255, 0, 0)
ElseIf v > 0.99 Then
clr = RGB(0, 255, 0)
Else
clr = RGB(255, 153, 0)
End If
End If
Me.Shapes(shapeName).Fill.ForeColor.RGB = clr
End Sub





share|improve this answer


























  • It worked out many thanks :) one more question if I might Tim - how would you make it than in case K16 is filled but L16 is empty, only Oval1 is refreshed and Oval2 would go white as ex. - just an embellishment if it could work.

    – Guillaume
    Nov 20 '18 at 19:03











  • See my edit above

    – Tim Williams
    Nov 20 '18 at 19:07











  • I cannot thank you enough - it work very well, thank you so much for that

    – Guillaume
    Nov 20 '18 at 19:41














0












0








0







Try this:



Private Sub Worksheet_Calculate()

CheckFormat Me.Range("K16"), "Oval 1"
CheckFormat Me.Range("L16"), "Oval 2"

End Sub

Sub CheckFormat(valueRange As Range, shapeName As String)
Dim v, clr As Long
v = valueRange.Value

If Len(v) = 0 Then
clr = RGB(255, 255, 255) '<< EDIT: use white if no value
Else
If v < 0.95 Then
clr = RGB(255, 0, 0)
ElseIf v > 0.99 Then
clr = RGB(0, 255, 0)
Else
clr = RGB(255, 153, 0)
End If
End If
Me.Shapes(shapeName).Fill.ForeColor.RGB = clr
End Sub





share|improve this answer















Try this:



Private Sub Worksheet_Calculate()

CheckFormat Me.Range("K16"), "Oval 1"
CheckFormat Me.Range("L16"), "Oval 2"

End Sub

Sub CheckFormat(valueRange As Range, shapeName As String)
Dim v, clr As Long
v = valueRange.Value

If Len(v) = 0 Then
clr = RGB(255, 255, 255) '<< EDIT: use white if no value
Else
If v < 0.95 Then
clr = RGB(255, 0, 0)
ElseIf v > 0.99 Then
clr = RGB(0, 255, 0)
Else
clr = RGB(255, 153, 0)
End If
End If
Me.Shapes(shapeName).Fill.ForeColor.RGB = clr
End Sub






share|improve this answer














share|improve this answer



share|improve this answer








edited Nov 20 '18 at 19:07

























answered Nov 20 '18 at 18:31









Tim WilliamsTim Williams

85.6k96885




85.6k96885













  • It worked out many thanks :) one more question if I might Tim - how would you make it than in case K16 is filled but L16 is empty, only Oval1 is refreshed and Oval2 would go white as ex. - just an embellishment if it could work.

    – Guillaume
    Nov 20 '18 at 19:03











  • See my edit above

    – Tim Williams
    Nov 20 '18 at 19:07











  • I cannot thank you enough - it work very well, thank you so much for that

    – Guillaume
    Nov 20 '18 at 19:41



















  • It worked out many thanks :) one more question if I might Tim - how would you make it than in case K16 is filled but L16 is empty, only Oval1 is refreshed and Oval2 would go white as ex. - just an embellishment if it could work.

    – Guillaume
    Nov 20 '18 at 19:03











  • See my edit above

    – Tim Williams
    Nov 20 '18 at 19:07











  • I cannot thank you enough - it work very well, thank you so much for that

    – Guillaume
    Nov 20 '18 at 19:41

















It worked out many thanks :) one more question if I might Tim - how would you make it than in case K16 is filled but L16 is empty, only Oval1 is refreshed and Oval2 would go white as ex. - just an embellishment if it could work.

– Guillaume
Nov 20 '18 at 19:03





It worked out many thanks :) one more question if I might Tim - how would you make it than in case K16 is filled but L16 is empty, only Oval1 is refreshed and Oval2 would go white as ex. - just an embellishment if it could work.

– Guillaume
Nov 20 '18 at 19:03













See my edit above

– Tim Williams
Nov 20 '18 at 19:07





See my edit above

– Tim Williams
Nov 20 '18 at 19:07













I cannot thank you enough - it work very well, thank you so much for that

– Guillaume
Nov 20 '18 at 19:41





I cannot thank you enough - it work very well, thank you so much for that

– Guillaume
Nov 20 '18 at 19:41













0














Worksheet_Change will be launched if any of cells will be changed manually by user. It will not be triggered if any of your formulas like RANDBETWEEN will bring new value.



You might be interested in reforging your routine to a VBA formula of a VOLATILE type. Click the link to follow some of the instructions. Long story short - you can place a special command into your User Defined Function so it will run each time something changes in your workbook. And that formula you could place into $K$16 cell.



Hope that helps.






share|improve this answer
























  • Thank you Roman - would you know how to place this volatile function into my macro above or do I really need a new module for it and if yes, how to call back to the $K$16 cell - the range is from K:16 - W:16 with each of them a dedicated shape for the formatting. Thank you

    – Guillaume
    Nov 20 '18 at 18:14











  • What exact formula do you have inside $K$16 cell? New UDF will be copying it's calculations and repeat your SUB code.

    – Roman Voronov
    Nov 20 '18 at 18:17











  • it refers to a calculation on another worksheets =IFERROR('Graph Data'!C303,"") and the C303 is having the following formulas : =IF('GM Track'!E3="Act",'GM Track'!E56/'GM Track'!E58,NA())

    – Guillaume
    Nov 20 '18 at 18:42


















0














Worksheet_Change will be launched if any of cells will be changed manually by user. It will not be triggered if any of your formulas like RANDBETWEEN will bring new value.



You might be interested in reforging your routine to a VBA formula of a VOLATILE type. Click the link to follow some of the instructions. Long story short - you can place a special command into your User Defined Function so it will run each time something changes in your workbook. And that formula you could place into $K$16 cell.



Hope that helps.






share|improve this answer
























  • Thank you Roman - would you know how to place this volatile function into my macro above or do I really need a new module for it and if yes, how to call back to the $K$16 cell - the range is from K:16 - W:16 with each of them a dedicated shape for the formatting. Thank you

    – Guillaume
    Nov 20 '18 at 18:14











  • What exact formula do you have inside $K$16 cell? New UDF will be copying it's calculations and repeat your SUB code.

    – Roman Voronov
    Nov 20 '18 at 18:17











  • it refers to a calculation on another worksheets =IFERROR('Graph Data'!C303,"") and the C303 is having the following formulas : =IF('GM Track'!E3="Act",'GM Track'!E56/'GM Track'!E58,NA())

    – Guillaume
    Nov 20 '18 at 18:42
















0












0








0







Worksheet_Change will be launched if any of cells will be changed manually by user. It will not be triggered if any of your formulas like RANDBETWEEN will bring new value.



You might be interested in reforging your routine to a VBA formula of a VOLATILE type. Click the link to follow some of the instructions. Long story short - you can place a special command into your User Defined Function so it will run each time something changes in your workbook. And that formula you could place into $K$16 cell.



Hope that helps.






share|improve this answer













Worksheet_Change will be launched if any of cells will be changed manually by user. It will not be triggered if any of your formulas like RANDBETWEEN will bring new value.



You might be interested in reforging your routine to a VBA formula of a VOLATILE type. Click the link to follow some of the instructions. Long story short - you can place a special command into your User Defined Function so it will run each time something changes in your workbook. And that formula you could place into $K$16 cell.



Hope that helps.







share|improve this answer












share|improve this answer



share|improve this answer










answered Nov 20 '18 at 18:05









Roman VoronovRoman Voronov

54




54













  • Thank you Roman - would you know how to place this volatile function into my macro above or do I really need a new module for it and if yes, how to call back to the $K$16 cell - the range is from K:16 - W:16 with each of them a dedicated shape for the formatting. Thank you

    – Guillaume
    Nov 20 '18 at 18:14











  • What exact formula do you have inside $K$16 cell? New UDF will be copying it's calculations and repeat your SUB code.

    – Roman Voronov
    Nov 20 '18 at 18:17











  • it refers to a calculation on another worksheets =IFERROR('Graph Data'!C303,"") and the C303 is having the following formulas : =IF('GM Track'!E3="Act",'GM Track'!E56/'GM Track'!E58,NA())

    – Guillaume
    Nov 20 '18 at 18:42





















  • Thank you Roman - would you know how to place this volatile function into my macro above or do I really need a new module for it and if yes, how to call back to the $K$16 cell - the range is from K:16 - W:16 with each of them a dedicated shape for the formatting. Thank you

    – Guillaume
    Nov 20 '18 at 18:14











  • What exact formula do you have inside $K$16 cell? New UDF will be copying it's calculations and repeat your SUB code.

    – Roman Voronov
    Nov 20 '18 at 18:17











  • it refers to a calculation on another worksheets =IFERROR('Graph Data'!C303,"") and the C303 is having the following formulas : =IF('GM Track'!E3="Act",'GM Track'!E56/'GM Track'!E58,NA())

    – Guillaume
    Nov 20 '18 at 18:42



















Thank you Roman - would you know how to place this volatile function into my macro above or do I really need a new module for it and if yes, how to call back to the $K$16 cell - the range is from K:16 - W:16 with each of them a dedicated shape for the formatting. Thank you

– Guillaume
Nov 20 '18 at 18:14





Thank you Roman - would you know how to place this volatile function into my macro above or do I really need a new module for it and if yes, how to call back to the $K$16 cell - the range is from K:16 - W:16 with each of them a dedicated shape for the formatting. Thank you

– Guillaume
Nov 20 '18 at 18:14













What exact formula do you have inside $K$16 cell? New UDF will be copying it's calculations and repeat your SUB code.

– Roman Voronov
Nov 20 '18 at 18:17





What exact formula do you have inside $K$16 cell? New UDF will be copying it's calculations and repeat your SUB code.

– Roman Voronov
Nov 20 '18 at 18:17













it refers to a calculation on another worksheets =IFERROR('Graph Data'!C303,"") and the C303 is having the following formulas : =IF('GM Track'!E3="Act",'GM Track'!E56/'GM Track'!E58,NA())

– Guillaume
Nov 20 '18 at 18:42







it refers to a calculation on another worksheets =IFERROR('Graph Data'!C303,"") and the C303 is having the following formulas : =IF('GM Track'!E3="Act",'GM Track'!E56/'GM Track'!E58,NA())

– Guillaume
Nov 20 '18 at 18:42




















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53398726%2fexcel-vba-i-cannot-refresh-a-shape-conditional-formatting-linked-to-a-formul%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

"Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

Alcedinidae

RAC Tourist Trophy