[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

VBA color chart bars

Posted on 2016-09-01
12
Medium Priority
?
131 Views
Last Modified: 2016-09-02
Dear All,

First of all I would like to thank you for further comments and reading my question!
I am really Need in your help!

I created a Chart by using Pivot table.The Chart Shows the Name of the products and Revenue for each of this products.

Could you please help me,how can i do in VBA or by another method,I want to choose the one product,press on it,and it will be automatically Shows on the graph by changing Color only of the bar of this specific product ?

for example,all columns are Grey,then i will choose on product,and this product will be automatically Shows by red on the chart

I am really appreciate your help!I am very tried to explain...
0
Comment
Question by:Yana Burmistrova
  • 6
  • 4
  • 2
12 Comments
 
LVL 43

Expert Comment

by:Saqib Husain, Syed
ID: 41779376
You would have to upload a sample excel file to understand and work on the problem.
0
 
LVL 43

Expert Comment

by:Saqib Husain, Syed
ID: 41779382
BTW Please delete your other question to eliminate any confusion.
0
 

Author Comment

by:Yana Burmistrova
ID: 41779420
Please find attached
VBA.xlsx
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 54

Accepted Solution

by:
Rgonzo1971 earned 2000 total points
ID: 41779523
Hi,

pls try to dbl-click on the first column
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Set myRng = ActiveSheet.PivotTables(1).RowRange.Resize(ActiveSheet.PivotTables(1).RowRange.Rows.Count - 2).Offset(1)

Set SerCol = ActiveSheet.Shapes(1).Chart.SeriesCollection(1)
ActiveSheet.Shapes(1).Chart.ClearToMatchStyle
If Not Intersect(Target, myRng) Is Nothing Then
    res = 0
    On Error Resume Next ' find corresponding XValue
    res = WorksheetFunction.Match(Cells(Target.Row, 1), SerCol.XValues, 0)
    On Error GoTo 0
    If res <> 0 Then ' if found
        With SerCol.Points(res).Format.Fill
            .Visible = msoTrue
            .ForeColor.RGB = RGB(255, 0, 0)
            .Solid
        End With
    End If

Else
  '  ActiveSheet.Shapes(1).Chart.ClearToMatchStyle
End If
End Sub

Open in new window

Regards
VBAv1.xlsm
0
 

Author Comment

by:Yana Burmistrova
ID: 41779543
Thank you so much for your help!!!!
you are an expert!
 
I am very appreciate your help!

it works!!!
Could you please let me know,is it possible to add also the Name of the product?

For example,when i double clicked on the product,the Color Change and Shows on the graph,is it possible also to add the Name of the choosing product on the upp of the column ?
0
 
LVL 54

Expert Comment

by:Rgonzo1971
ID: 41779637
You mean in the chart?
0
 

Author Comment

by:Yana Burmistrova
ID: 41779674
yes,please.only for choosing product
0
 
LVL 54

Expert Comment

by:Rgonzo1971
ID: 41779754
then try
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Set myRng = ActiveSheet.PivotTables(1).RowRange.Resize(ActiveSheet.PivotTables(1).RowRange.Rows.Count - 2).Offset(1)

Set SerCol = ActiveSheet.Shapes(1).Chart.SeriesCollection(1)
ActiveSheet.Shapes(1).Chart.ClearToMatchStyle
On Error Resume Next
SerCol.DataLabels.Delete
On Error GoTo 0
If Not Intersect(Target, myRng) Is Nothing Then
    res = 0
    On Error Resume Next ' find corresponding XValue
    res = WorksheetFunction.Match(Cells(Target.Row, 1), SerCol.XValues, 0)
    On Error GoTo 0
    If res <> 0 Then ' if found
        With SerCol.Points(res).Format.Fill
            .Visible = msoTrue
            .ForeColor.RGB = RGB(255, 0, 0)
            .Solid
        End With
        SerCol.Points(res).ApplyDataLabels
        SerCol.Points(res).DataLabel.ShowCategoryName = True
        SerCol.Points(res).DataLabel.ShowValue = False
    End If

Else
  '  ActiveSheet.Shapes(1).Chart.ClearToMatchStyle
End If
End Sub

Open in new window

VBAv2.xlsm
0
 

Author Comment

by:Yana Burmistrova
ID: 41779757
excelent!!!!!

Thank you very much!!!
0
 

Author Comment

by:Yana Burmistrova
ID: 41781133
Dear All,
Could you please help me to do the same ,but with a simple Chart and data in Excel?

how can i do automatically showing the Color and Name of the product,without Pivot table?

I am very appreciate your help!

Thank you very much for your futher answers and comments!!!
Excel-VBA.xlsx
0
 
LVL 54

Expert Comment

by:Rgonzo1971
ID: 41781134
Hi,

Could you open a new question?

Regards
0
 

Author Comment

by:Yana Burmistrova
ID: 41781135
yes sure!
0

Featured Post

 [eBook] Windows Nano Server

Download this FREE eBook and learn all you need to get started with Windows Nano Server, including deployment options, remote management
and troubleshooting tips and tricks

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Quickbooks hosting can do wonders to your enterprise but considering the points elaborated in the article which will help you to better analyze the outcomes. So scan your business, its needs and then move to the new world of limitless benefits.
I came across an unsolved Outlook issue and here is my solution.
Simple Linear Regression
Look below the covers at a subform control , and the form that is inside it. Explore properties and see how easy it is to aggregate, get statistics, and synchronize results for your data. A Microsoft Access subform is used to show relevant calcul…

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question