![]() |
Macro problem
(Excel 2003) Can anyone help with a quick macro I have that is giving
me an error? The purpose of the macro is to find all formulas on a page (range) and increment the Column by 1. The error is on the line "cel.formula = prefix & cel.formula & sufix" The formulas I am changing are all references to another worksheet. Is the problem that the formula contains an equal sign in it? Any help is GREATLY appreciated! Thanks -John -------------------------------------------------------------------------------- Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then _ Cel.Formula = Prefix & Cel.Formula & Sufix End If Next Cel End Sub |
Macro problem
uI didn't test it, but _ (underline) character in line
If Cel.HasFormula Then _ is a wrong syntax, try your macro without it: If Cel.HasFormula Then Regards, Stefi €ť ezt Ă*rta: (Excel 2003) Can anyone help with a quick macro I have that is giving me an error? The purpose of the macro is to find all formulas on a page (range) and increment the Column by 1. The error is on the line "cel.formula = prefix & cel.formula & sufix" The formulas I am changing are all references to another worksheet. Is the problem that the formula contains an equal sign in it? Any help is GREATLY appreciated! Thanks -John -------------------------------------------------------------------------------- Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then _ Cel.Formula = Prefix & Cel.Formula & Sufix End If Next Cel End Sub |
Macro problem
Either that, or remove the End If after.
-- --- HTH Bob (change the xxxx to gmail if mailing direct) "Stefi" wrote in message ... uI didn't test it, but _ (underline) character in line If Cel.HasFormula Then _ is a wrong syntax, try your macro without it: If Cel.HasFormula Then Regards, Stefi " ezt írta: (Excel 2003) Can anyone help with a quick macro I have that is giving me an error? The purpose of the macro is to find all formulas on a page (range) and increment the Column by 1. The error is on the line "cel.formula = prefix & cel.formula & sufix" The formulas I am changing are all references to another worksheet. Is the problem that the formula contains an equal sign in it? Any help is GREATLY appreciated! Thanks -John -------------------------------------------------------------------------------- Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then _ Cel.Formula = Prefix & Cel.Formula & Sufix End If Next Cel End Sub |
Macro problem
Thanks for the replies. I've tried both modifications, but still get
the error: "Application-defined or object-defined error" (for the same line) So the macro (now) looks like this: Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then Cel.Formula = Prefix & Cel.Formula & Sufix End If Next End Sub any ideas? Thanks -John -===================== Stefi wrote: uI didn't test it, but _ (underline) character in line If Cel.HasFormula Then _ is a wrong syntax, try your macro without it: If Cel.HasFormula Then Regards, Stefi " ezt írta: (Excel 2003) Can anyone help with a quick macro I have that is giving me an error? The purpose of the macro is to find all formulas on a page (range) and increment the Column by 1. The error is on the line "cel.formula = prefix & cel.formula & sufix" The formulas I am changing are all references to another worksheet. Is the problem that the formula contains an equal sign in it? Any help is GREATLY appreciated! Thanks -John -------------------------------------------------------------------------------- Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then _ Cel.Formula = Prefix & Cel.Formula & Sufix End If Next Cel End Sub |
Macro problem
One problem at least is that the formulas selected have "=" in front of
them. So to remove them: Cel.Formula = Prefix & Mid(Cel.Formula, 2) & Sufix This assumes that Mid(Cel.Formula, 2) returns a legitimate cell reference. -- Jim wrote in message oups.com... Thanks for the replies. I've tried both modifications, but still get the error: "Application-defined or object-defined error" (for the same line) So the macro (now) looks like this: Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then Cel.Formula = Prefix & Cel.Formula & Sufix End If Next End Sub any ideas? Thanks -John -===================== Stefi wrote: uI didn't test it, but _ (underline) character in line If Cel.HasFormula Then _ is a wrong syntax, try your macro without it: If Cel.HasFormula Then Regards, Stefi " ezt írta: (Excel 2003) Can anyone help with a quick macro I have that is giving me an error? The purpose of the macro is to find all formulas on a page (range) and increment the Column by 1. The error is on the line "cel.formula = prefix & cel.formula & sufix" The formulas I am changing are all references to another worksheet. Is the problem that the formula contains an equal sign in it? Any help is GREATLY appreciated! Thanks -John -------------------------------------------------------------------------------- Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then _ Cel.Formula = Prefix & Cel.Formula & Sufix End If Next Cel End Sub |
Macro problem
|
Macro problem
THANK YOU (both of you)!!!!!!!!!!!!!!!!!!!
That did it. Nothing like saving a TON of manual editing. :) Thanks again. -John ----------------------- Jim Rech wrote: One problem at least is that the formulas selected have "=" in front of them. So to remove them: Cel.Formula = Prefix & Mid(Cel.Formula, 2) & Sufix This assumes that Mid(Cel.Formula, 2) returns a legitimate cell reference. -- Jim wrote in message oups.com... Thanks for the replies. I've tried both modifications, but still get the error: "Application-defined or object-defined error" (for the same line) So the macro (now) looks like this: Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then Cel.Formula = Prefix & Cel.Formula & Sufix End If Next End Sub any ideas? Thanks -John -===================== Stefi wrote: uI didn't test it, but _ (underline) character in line If Cel.HasFormula Then _ is a wrong syntax, try your macro without it: If Cel.HasFormula Then Regards, Stefi " ezt írta: (Excel 2003) Can anyone help with a quick macro I have that is giving me an error? The purpose of the macro is to find all formulas on a page (range) and increment the Column by 1. The error is on the line "cel.formula = prefix & cel.formula & sufix" The formulas I am changing are all references to another worksheet. Is the problem that the formula contains an equal sign in it? Any help is GREATLY appreciated! Thanks -John -------------------------------------------------------------------------------- Sub EditFormula() Dim Cel As Range Dim Sufix As String Dim Prefix As String Prefix = "=Offset(" Sufix = ", 0, 1)" For Each Cel In Selection If Cel.HasFormula Then _ Cel.Formula = Prefix & Cel.Formula & Sufix End If Next Cel End Sub |
All times are GMT +1. The time now is 03:46 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com