A Microsoft Office (Excel, Word) forum. OfficeFrustration

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » OfficeFrustration forum » Microsoft Excel » Charts and Charting
Site Map Home Register Authors List Search Today's Posts Mark Forums Read  

Excel 2007 - problems with macro to change series formula



 
 
Thread Tools Display Modes
  #1  
Old May 18th, 2010, 05:33 PM posted to microsoft.public.excel.charting
Gill L
external usenet poster
 
Posts: 1
Default Excel 2007 - problems with macro to change series formula

Please help! I've just been moved to Excel 2007 and now find that the
wonderful macro below no longer works (the single chart version is still OK).
I have files with 50 charts on a single worksheet (the data is on a separate
tab) and I need to choose which rows to include rather than having an auto
update. The files are accessed from multiple workstations so a macro saved
in the workbook was ideal.
Is there any way I can modify this code to get it working? Thanks in advance.


Sub ChangeSeriesFormulaAllCharts()
''' Do all charts in sheet
Dim oChart As ChartObject
Dim OldString As String, NewString As String
Dim mySrs As Series

OldString = InputBox("Enter the string to be replaced:", "Enter old
string")

If Len(OldString) 1 Then
NewString = InputBox("Enter the string to replace " & """" _
& OldString & """:", "Enter new string")
For Each oChart In ActiveSheet.ChartObjects
For Each mySrs In oChart.Chart.SeriesCollection
mySrs.Formula = WorksheetFunction.Substitute(mySrs.Formula,
OldString, NewString)
Next
Next
Else
MsgBox "Nothing to be replaced.", vbInformation, "Nothing Entered"
End If
End Sub

Ads
  #2  
Old May 18th, 2010, 05:57 PM posted to microsoft.public.excel.charting
Jon Peltier[_2_]
external usenet poster
 
Posts: 386
Default Excel 2007 - problems with macro to change series formula

I've provided a link to an updated add-in to handle this change in a
recent article:

How to Edit Series Formulas
http://peltiertech.com/WordPress/how...ries-formulas/

If you need to put the code into a particular workbook, copy it from the
add-in and paste it into the workbook.

- Jon
-------
Jon Peltier
Peltier Technical Services, Inc.
http://peltiertech.com/


On 5/18/2010 12:33 PM, Gill L wrote:
Please help! I've just been moved to Excel 2007 and now find that the
wonderful macro below no longer works (the single chart version is still OK).
I have files with 50 charts on a single worksheet (the data is on a separate
tab) and I need to choose which rows to include rather than having an auto
update. The files are accessed from multiple workstations so a macro saved
in the workbook was ideal.
Is there any way I can modify this code to get it working? Thanks in advance.


Sub ChangeSeriesFormulaAllCharts()
''' Do all charts in sheet
Dim oChart As ChartObject
Dim OldString As String, NewString As String
Dim mySrs As Series

OldString = InputBox("Enter the string to be replaced:", "Enter old
string")

If Len(OldString) 1 Then
NewString = InputBox("Enter the string to replace "& """" _
& OldString& """:", "Enter new string")
For Each oChart In ActiveSheet.ChartObjects
For Each mySrs In oChart.Chart.SeriesCollection
mySrs.Formula = WorksheetFunction.Substitute(mySrs.Formula,
OldString, NewString)
Next
Next
Else
MsgBox "Nothing to be replaced.", vbInformation, "Nothing Entered"
End If
End Sub

  #3  
Old May 20th, 2010, 10:40 AM posted to microsoft.public.excel.charting
Gill L[_2_]
external usenet poster
 
Posts: 1
Default Excel 2007 - problems with macro to change series formula

Thanks Jon, I installed the Add-In on a private computer and it’s perfect. I
copied the code text and tried to paste it into my file as a new macro, but
that didn’t work because of ‘Invalid Inside Procedure’.

After some internet research I thought I needed to create it as a module but
there was a error message when it got to ‘Dim gfrmChgSrsFmla As FChgSrsFmla’
about Compile Error: User Defined Type not available.

Sorry, I’ve only used very basic macros before so if you could point me to
more instructions that would be really helpful. Thanks again.


"Jon Peltier" wrote:

I've provided a link to an updated add-in to handle this change in a
recent article:

How to Edit Series Formulas
http://peltiertech.com/WordPress/how...ries-formulas/

If you need to put the code into a particular workbook, copy it from the
add-in and paste it into the workbook.

- Jon
-------
Jon Peltier
Peltier Technical Services, Inc.
http://peltiertech.com/


On 5/18/2010 12:33 PM, Gill L wrote:
Please help! I've just been moved to Excel 2007 and now find that the
wonderful macro below no longer works (the single chart version is still OK).
I have files with 50 charts on a single worksheet (the data is on a separate
tab) and I need to choose which rows to include rather than having an auto
update. The files are accessed from multiple workstations so a macro saved
in the workbook was ideal.
Is there any way I can modify this code to get it working? Thanks in advance.


Sub ChangeSeriesFormulaAllCharts()
''' Do all charts in sheet
Dim oChart As ChartObject
Dim OldString As String, NewString As String
Dim mySrs As Series

OldString = InputBox("Enter the string to be replaced:", "Enter old
string")

If Len(OldString) 1 Then
NewString = InputBox("Enter the string to replace "& """" _
& OldString& """:", "Enter new string")
For Each oChart In ActiveSheet.ChartObjects
For Each mySrs In oChart.Chart.SeriesCollection
mySrs.Formula = WorksheetFunction.Substitute(mySrs.Formula,
OldString, NewString)
Next
Next
Else
MsgBox "Nothing to be replaced.", vbInformation, "Nothing Entered"
End If
End Sub

.

  #4  
Old May 21st, 2010, 04:07 AM posted to microsoft.public.excel.charting
Jon Peltier[_2_]
external usenet poster
 
Posts: 386
Default Excel 2007 - problems with macro to change series formula

FChgSrsFmla is the user form used to get user input.

It would probably be easier to distribute the whole add-in to anyone who
needs the functionality.

- Jon
-------
Jon Peltier
Peltier Technical Services, Inc.
http://peltiertech.com/


On 5/20/2010 5:40 AM, Gill L wrote:
Thanks Jon, I installed the Add-In on a private computer and it’s perfect. I
copied the code text and tried to paste it into my file as a new macro, but
that didn’t work because of ‘Invalid Inside Procedure’.

After some internet research I thought I needed to create it as a module but
there was a error message when it got to ‘Dim gfrmChgSrsFmla As FChgSrsFmla’
about Compile Error: User Defined Type not available.

Sorry, I’ve only used very basic macros before so if you could point me to
more instructions that would be really helpful. Thanks again.


"Jon Peltier" wrote:

I've provided a link to an updated add-in to handle this change in a
recent article:

How to Edit Series Formulas
http://peltiertech.com/WordPress/how...ries-formulas/

If you need to put the code into a particular workbook, copy it from the
add-in and paste it into the workbook.

- Jon
-------
Jon Peltier
Peltier Technical Services, Inc.
http://peltiertech.com/


On 5/18/2010 12:33 PM, Gill L wrote:
Please help! I've just been moved to Excel 2007 and now find that the
wonderful macro below no longer works (the single chart version is still OK).
I have files with 50 charts on a single worksheet (the data is on a separate
tab) and I need to choose which rows to include rather than having an auto
update. The files are accessed from multiple workstations so a macro saved
in the workbook was ideal.
Is there any way I can modify this code to get it working? Thanks in advance.


Sub ChangeSeriesFormulaAllCharts()
''' Do all charts in sheet
Dim oChart As ChartObject
Dim OldString As String, NewString As String
Dim mySrs As Series

OldString = InputBox("Enter the string to be replaced:", "Enter old
string")

If Len(OldString) 1 Then
NewString = InputBox("Enter the string to replace "& """" _
& OldString& """:", "Enter new string")
For Each oChart In ActiveSheet.ChartObjects
For Each mySrs In oChart.Chart.SeriesCollection
mySrs.Formula = WorksheetFunction.Substitute(mySrs.Formula,
OldString, NewString)
Next
Next
Else
MsgBox "Nothing to be replaced.", vbInformation, "Nothing Entered"
End If
End Sub

.

 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump


All times are GMT +1. The time now is 01:42 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Copyright 2004-2018 OfficeFrustration.
The comments are property of their posters.