Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi
I intend to maximize the width of the legend within two axis. I reposition it myself using this code: If .HasLegend Then .Legend.Width = .PlotArea.InsideWidth .Legend.Left = .PlotArea.InsideLeft .Legend.Top = 1 End If But it is not working when I use Application.ScreenUpdating = False If Application.ScreenUpdating = True then only charts shown on the screen while updating / creating are done right. What is going on ? Secondly I want to have the legendentries to occupy one line each instead of one line all together. Can that be accomplished ? Yours |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Excel 97? I never did much with Legend formatting in '97, but I know it
can really mess up plot area formatting if the chart isn't completely on screen. I can't say much about your specific problem beyond that, other than try to (temporarily) center the chart on screen, make your changes, and put the chart back. If the legend is wide enough to fit more than one entry across, it fills them across first, then down. - Jon ------- Jon Peltier, Microsoft Excel MVP http://www.geocities.com/jonpeltier/Excel/index.html _______ n/a wrote: Hi I intend to maximize the width of the legend within two axis. I reposition it myself using this code: If .HasLegend Then .Legend.Width = .PlotArea.InsideWidth .Legend.Left = .PlotArea.InsideLeft .Legend.Top = 1 End If But it is not working when I use Application.ScreenUpdating = False If Application.ScreenUpdating = True then only charts shown on the screen while updating / creating are done right. What is going on ? Secondly I want to have the legendentries to occupy one line each instead of one line all together. Can that be accomplished ? Yours |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
And my 2 cents...
Be sure your sheet zoom is set to 100%. Charts have weird behavior with other settings... -- sb "Jon Peltier" wrote in message ... Excel 97? I never did much with Legend formatting in '97, but I know it can really mess up plot area formatting if the chart isn't completely on screen. I can't say much about your specific problem beyond that, other than try to (temporarily) center the chart on screen, make your changes, and put the chart back. If the legend is wide enough to fit more than one entry across, it fills them across first, then down. - Jon ------- Jon Peltier, Microsoft Excel MVP http://www.geocities.com/jonpeltier/Excel/index.html _______ n/a wrote: Hi I intend to maximize the width of the legend within two axis. I reposition it myself using this code: If .HasLegend Then .Legend.Width = .PlotArea.InsideWidth .Legend.Left = .PlotArea.InsideLeft .Legend.Top = 1 End If But it is not working when I use Application.ScreenUpdating = False If Application.ScreenUpdating = True then only charts shown on the screen while updating / creating are done right. What is going on ? Secondly I want to have the legendentries to occupy one line each instead of one line all together. Can that be accomplished ? Yours |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Application.ScreenUpdating = False prevents any changes to the screen
until it is reset to True. So just wrap your code between False & True. The only way that I know to have each legend entry on a separate line is to have the legend position formatted Left, Right, or Corner. Top and bottom try to put them on a single line. Of course you can use Left, Right, or Corner and than move it. (I dragged it and it worked. But the plot area got 'squished') -- sb "n/a" wrote in message om... Hi I intend to maximize the width of the legend within two axis. I reposition it myself using this code: If .HasLegend Then .Legend.Width = .PlotArea.InsideWidth .Legend.Left = .PlotArea.InsideLeft .Legend.Top = 1 End If But it is not working when I use Application.ScreenUpdating = False If Application.ScreenUpdating = True then only charts shown on the screen while updating / creating are done right. What is going on ? Secondly I want to have the legendentries to occupy one line each instead of one line all together. Can that be accomplished ? Yours |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have to use screenupdating = False, or else my performance drops
below acceptable. I'm producing up to 27 charts in every worksheet so I need this. I'm using Excel 2000 What I find irritating is that the code work if I singlestep through it in debug mode but doesn't work in "release" mode. It seems to be the screenupdating that does something and only if the chart is present on the screen. If it is offscreen (which is possible) they still have this fault. I hoped someone have heard of this problem before, but I can't find anything anywhere ! "steve" wrote in message ... Application.ScreenUpdating = False prevents any changes to the screen until it is reset to True. So just wrap your code between False & True. The only way that I know to have each legend entry on a separate line is to have the legend position formatted Left, Right, or Corner. Top and bottom try to put them on a single line. Of course you can use Left, Right, or Corner and than move it. (I dragged it and it worked. But the plot area got 'squished') -- sb "n/a" wrote in message om... Hi I intend to maximize the width of the legend within two axis. I reposition it myself using this code: If .HasLegend Then .Legend.Width = .PlotArea.InsideWidth .Legend.Left = .PlotArea.InsideLeft .Legend.Top = 1 End If But it is not working when I use Application.ScreenUpdating = False If Application.ScreenUpdating = True then only charts shown on the screen while updating / creating are done right. What is going on ? Secondly I want to have the legendentries to occupy one line each instead of one line all together. Can that be accomplished ? Yours |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi
It helps to put the zoom = 100 %. Thanks to Steve for that suggestion. I consider this to be a bug ! But luckily Steve pointed on a work-around |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Try structuring your code like this
Sub MessMyChart() ApplicationScreenUpdating = False ' the screen will not change during this * code to do something * ApplicationScreenUpdating = True ' the screen should refresh ApplicationScreenUpdating = False ' back to freezing the screen * more code * ApplicationScreenUpdating = True End Sub -- sb "n/a" wrote in message om... I have to use screenupdating = False, or else my performance drops below acceptable. I'm producing up to 27 charts in every worksheet so I need this. I'm using Excel 2000 What I find irritating is that the code work if I singlestep through it in debug mode but doesn't work in "release" mode. It seems to be the screenupdating that does something and only if the chart is present on the screen. If it is offscreen (which is possible) they still have this fault. I hoped someone have heard of this problem before, but I can't find anything anywhere ! "steve" wrote in message ... Application.ScreenUpdating = False prevents any changes to the screen until it is reset to True. So just wrap your code between False & True. The only way that I know to have each legend entry on a separate line is to have the legend position formatted Left, Right, or Corner. Top and bottom try to put them on a single line. Of course you can use Left, Right, or Corner and than move it. (I dragged it and it worked. But the plot area got 'squished') -- sb "n/a" wrote in message om... Hi I intend to maximize the width of the legend within two axis. I reposition it myself using this code: If .HasLegend Then .Legend.Width = .PlotArea.InsideWidth .Legend.Left = .PlotArea.InsideLeft .Legend.Top = 1 End If But it is not working when I use Application.ScreenUpdating = False If Application.ScreenUpdating = True then only charts shown on the screen while updating / creating are done right. What is going on ? Secondly I want to have the legendentries to occupy one line each instead of one line all together. Can that be accomplished ? Yours |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
HOW TO ADD LEGENDS IN CHART | Excel Discussion (Misc queries) | |||
Dates in Chart Legends | Charts and Charting in Excel | |||
Chart Legends | Charts and Charting in Excel | |||
formatting chart legends | Charts and Charting in Excel | |||
Chart legends question | Excel Discussion (Misc queries) |