Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.charting
Caro-Kann Defence
 
Posts: n/a
Default Moving data labels around with VBA (and adding a line between two

Hello.

I am looking for a way to manage data labels in an automated charting
procedure I am writing.

The chart is a waterfall chart (I believe) and I'd like to be able to loop
through each dataseries/column to find the height of the total column and
then set the label for the total column to sit x points above it.

There is a second issue I need help with. As the chart displays components
of return for stocks and bonds, I'd like to place a line in between the last
stock and the first bond shown. Is there a way that I can place this line
dynamically (charts will like have different numbers of stocks and bonds - as
will a particular chart over time).

I think there is an add-in someone mentioned I could try downloading but I'd
like to avoid that if possible.

Thanks,
Caro-Kann Defence
  #2   Report Post  
Posted to microsoft.public.excel.charting
hennie
 
Posts: n/a
Default Moving data labels around with VBA (and adding a line between two


Good day,

I think what you are looking for is what I use to control the chart
from Access when I export data. Change the source data, for series 1
to what ever to something similar to your legend as it is easier to
work with. Running a macro would give you something similar to my code
and there is a few options of where to place the lable.

I have had a little problem to display both the legend or
identification line and the value in the same block and that is why
there is two sections and it is display as a line chart.

With Source data you can change the series to a name.

With ActiveChart
With ActiveChart.Axes(xlValue)
.MinimumScale = 30
.MaximumScale = 170
.MinorUnit = 1
' .MajorUnitIsAuto = True
'.Crosses = xlCustom
.CrossesAt = 30
.ReversePlotOrder = False
'.ScaleType = xlLinear

End With

With .SeriesCollection("Upper Control Limit").Points(19)
.HasDataLabel = True
.DataLabel.Text = " Upper Control Limit ="
.DataLabel.Font.Size = 7
.DataLabel.Font.Italic = True
.DataLabel.HorizontalAlignment = xlRight
.DataLabel.VerticalAlignment = xlTop
.DataLabel.Position = xlLabelPositionAbove
.DataLabel.Orientation = xlHorizontal
End With

With .SeriesCollection("Upper Control Limit").Points(24)
.HasDataLabel = True
' .DataLabel.Text = "Upper Control Limit = 2.3"
.DataLabel.Font.Size = 7
.DataLabel.Font.Italic = True
.DataLabel.HorizontalAlignment = xlRight
.DataLabel.VerticalAlignment = xlTop
.DataLabel.Position = xlLabelPositionAbove
.DataLabel.Orientation = xlHorizontal
End With


I hope this helps

Hennie
Caro-Kann Defence wrote:
*Hello.

I am looking for a way to manage data labels in an automated
charting
procedure I am writing.

The chart is a waterfall chart (I believe) and I'd like to be able to
loop
through each dataseries/column to find the height of the total column
and
then set the label for the total column to sit x points above it.

There is a second issue I need help with. As the chart displays
components
of return for stocks and bonds, I'd like to place a line in between
the last
stock and the first bond shown. Is there a way that I can place this
line
dynamically (charts will like have different numbers of stocks and
bonds - as
will a particular chart over time).

I think there is an add-in someone mentioned I could try downloading
but I'd
like to avoid that if possible.

Thanks,
Caro-Kann Defence *




--
hennie
------------------------------------------------------------------------
Posted via http://www.mcse.ms
------------------------------------------------------------------------
View this thread: http://www.mcse.ms/message1990730.html

  #3   Report Post  
Posted to microsoft.public.excel.charting
Jon Peltier
 
Posts: n/a
Default Moving data labels around with VBA (and adding a line between two

I follow a methodology which is a little more complicated in the chart, but
much less so in VBA (in fact, it requires NO VBA).

For each set of labels I need, I add a line chart (or XY chart) series to
the chart, with X and Y values selected to precisely locate the label with
respect to the floating columns. Various formulas adjust these X and Y as
needed to move the labels to align with the columns. The added series are
formatted to be hidden (no line, no markers). Then I use one of these free
Excel add-ins to apply the appropriate datalabels to the points. Once
applied, I never need to readjust them, because the datalabel text is linked
to the cells in the worksheet that contain the text for the labels.

Rob Bovey's Chart Labeler, http://appspro.com
John Walkenbach's Chart Tools, http://j-walk.com/ss

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Peltier Technical Services
Tutorials and Custom Solutions
http://PeltierTech.com/
_______

"Caro-Kann Defence" wrote in
message ...
Hello.

I am looking for a way to manage data labels in an automated charting
procedure I am writing.

The chart is a waterfall chart (I believe) and I'd like to be able to loop
through each dataseries/column to find the height of the total column and
then set the label for the total column to sit x points above it.

There is a second issue I need help with. As the chart displays components
of return for stocks and bonds, I'd like to place a line in between the
last
stock and the first bond shown. Is there a way that I can place this line
dynamically (charts will like have different numbers of stocks and bonds -
as
will a particular chart over time).

I think there is an add-in someone mentioned I could try downloading but
I'd
like to avoid that if possible.

Thanks,
Caro-Kann Defence



  #4   Report Post  
Posted to microsoft.public.excel.charting
Caro-Kann Defence
 
Posts: n/a
Default Moving data labels around with VBA (and adding a line between

Hi Jon.

Thanks for the response. I do have one follow-up question: is there a way to
set the label values to show different values than the ones that would
normally be automatically picked up in the chart? For example, instead of
showing a label value of "2" could I tie it to a cell in the worksheet that
has a value "4" (or "Eggs" for that matter)?

Thanks again. I am a little concerned about usign the Add-ins given my IT
department may be a tough group to allow external programs being brought in
(sorry!).

CKD

"Jon Peltier" wrote:

I follow a methodology which is a little more complicated in the chart, but
much less so in VBA (in fact, it requires NO VBA).

For each set of labels I need, I add a line chart (or XY chart) series to
the chart, with X and Y values selected to precisely locate the label with
respect to the floating columns. Various formulas adjust these X and Y as
needed to move the labels to align with the columns. The added series are
formatted to be hidden (no line, no markers). Then I use one of these free
Excel add-ins to apply the appropriate datalabels to the points. Once
applied, I never need to readjust them, because the datalabel text is linked
to the cells in the worksheet that contain the text for the labels.

Rob Bovey's Chart Labeler, http://appspro.com
John Walkenbach's Chart Tools, http://j-walk.com/ss

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Peltier Technical Services
Tutorials and Custom Solutions
http://PeltierTech.com/
_______

"Caro-Kann Defence" wrote in
message ...
Hello.

I am looking for a way to manage data labels in an automated charting
procedure I am writing.

The chart is a waterfall chart (I believe) and I'd like to be able to loop
through each dataseries/column to find the height of the total column and
then set the label for the total column to sit x points above it.

There is a second issue I need help with. As the chart displays components
of return for stocks and bonds, I'd like to place a line in between the
last
stock and the first bond shown. Is there a way that I can place this line
dynamically (charts will like have different numbers of stocks and bonds -
as
will a particular chart over time).

I think there is an add-in someone mentioned I could try downloading but
I'd
like to avoid that if possible.

Thanks,
Caro-Kann Defence




  #5   Report Post  
Posted to microsoft.public.excel.charting
Andy Pope
 
Posts: n/a
Default Moving data labels around with VBA (and adding a line between

Hi,

You can link a datalabel, as well as chart titles, to cells. Here is an
explanation of how to do it manually for the chart title but the
principle is the same for data labels. Just click the data labels once
to select and the click the individual data label in order to be able to
link to a cell.
http://www.andypope.info/tips/tip001.htm

Cheers
Andy

Caro-Kann Defence wrote:
Hi Jon.

Thanks for the response. I do have one follow-up question: is there a way to
set the label values to show different values than the ones that would
normally be automatically picked up in the chart? For example, instead of
showing a label value of "2" could I tie it to a cell in the worksheet that
has a value "4" (or "Eggs" for that matter)?

Thanks again. I am a little concerned about usign the Add-ins given my IT
department may be a tough group to allow external programs being brought in
(sorry!).

CKD

"Jon Peltier" wrote:


I follow a methodology which is a little more complicated in the chart, but
much less so in VBA (in fact, it requires NO VBA).

For each set of labels I need, I add a line chart (or XY chart) series to
the chart, with X and Y values selected to precisely locate the label with
respect to the floating columns. Various formulas adjust these X and Y as
needed to move the labels to align with the columns. The added series are
formatted to be hidden (no line, no markers). Then I use one of these free
Excel add-ins to apply the appropriate datalabels to the points. Once
applied, I never need to readjust them, because the datalabel text is linked
to the cells in the worksheet that contain the text for the labels.

Rob Bovey's Chart Labeler, http://appspro.com
John Walkenbach's Chart Tools, http://j-walk.com/ss

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Peltier Technical Services
Tutorials and Custom Solutions
http://PeltierTech.com/
_______

"Caro-Kann Defence" wrote in
message ...

Hello.

I am looking for a way to manage data labels in an automated charting
procedure I am writing.

The chart is a waterfall chart (I believe) and I'd like to be able to loop
through each dataseries/column to find the height of the total column and
then set the label for the total column to sit x points above it.

There is a second issue I need help with. As the chart displays components
of return for stocks and bonds, I'd like to place a line in between the
last
stock and the first bond shown. Is there a way that I can place this line
dynamically (charts will like have different numbers of stocks and bonds -
as
will a particular chart over time).

I think there is an add-in someone mentioned I could try downloading but
I'd
like to avoid that if possible.

Thanks,
Caro-Kann Defence





--

Andy Pope, Microsoft MVP - Excel
http://www.andypope.info
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT +1. The time now is 11:31 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"