Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have a main macro in whcih there is a variable "symbol"
"symbol" is derived from an inputbox during the step by step running of the main macro if I type in the immediate window ?symbol it gives correct answer there is another macro embeeded in the main macro at the end (before end sub) After the last codestatement of main macro the macro moves to the second macro. once the step runs into the second macro if I type in the immdediate window ?symbol it gives blank that means when the cursor moves into the second macro the variable "symbol" is not recognised. where do I do the mistake. I hope I have made myself clear. |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
AFAIK, you may not embed a Sub within another one.
HTH -- AP "R..VENKATARAMAN" a écrit dans le message de news: ... I have a main macro in whcih there is a variable "symbol" "symbol" is derived from an inputbox during the step by step running of the main macro if I type in the immediate window ?symbol it gives correct answer there is another macro embeeded in the main macro at the end (before end sub) After the last codestatement of main macro the macro moves to the second macro. once the step runs into the second macro if I type in the immdediate window ?symbol it gives blank that means when the cursor moves into the second macro the variable "symbol" is not recognised. where do I do the mistake. I hope I have made myself clear. |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
It sounds like the variable is out of scope, so you could pass the variable
to the second macro as a parameter: Sub MainMacro() Dim symbol As String Call SecondMacro(symbol) End Sub Sub SecondMacro(ByRef symbol As String) Debug.Print symbol End Sub ...................Or.................declare the variable at module level: Dim m_symbol As String Sub MainMacro() Debug.Print symbol Call SecondMacro() End Sub Sub SecondMacro() Debug.Print symbol End Sub You can look up "Understanding Scope and Visibility" in the VBE help for details. Best regards John "R..VENKATARAMAN" wrote in message ... I have a main macro in whcih there is a variable "symbol" "symbol" is derived from an inputbox during the step by step running of the main macro if I type in the immediate window ?symbol it gives correct answer there is another macro embeeded in the main macro at the end (before end sub) After the last codestatement of main macro the macro moves to the second macro. once the step runs into the second macro if I type in the immdediate window ?symbol it gives blank that means when the cursor moves into the second macro the variable "symbol" is not recognised. where do I do the mistake. I hope I have made myself clear. |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
thank you Mr. John. that is the mistake I am doing. I saw help under
"Understanding Scope and Visibility" of course to obviate the mistake I parked symbol in one of the cells of the spread sheet in the main macro and used the cell.value (instead of "symbol") in the second macro. yes the mistake is giving <dim within the main macro. I thought that as the second macro is called in the main macro, the main macro including calling the second macro will be one procedure. It is not . The above help is clear. thank you for pointing out this.Though I am fairly familiar with vba, every day I learn a new thing. thanks once again.; "John" wrote in message ... It sounds like the variable is out of scope, so you could pass the variable to the second macro as a parameter: Sub MainMacro() Dim symbol As String Call SecondMacro(symbol) End Sub Sub SecondMacro(ByRef symbol As String) Debug.Print symbol End Sub ..................Or.................declare the variable at module level: Dim m_symbol As String Sub MainMacro() Debug.Print symbol Call SecondMacro() End Sub Sub SecondMacro() Debug.Print symbol End Sub You can look up "Understanding Scope and Visibility" in the VBE help for details. Best regards John "R..VENKATARAMAN" wrote in message ... I have a main macro in whcih there is a variable "symbol" "symbol" is derived from an inputbox during the step by step running of the main macro if I type in the immediate window ?symbol it gives correct answer there is another macro embeeded in the main macro at the end (before end sub) After the last codestatement of main macro the macro moves to the second macro. once the step runs into the second macro if I type in the immdediate window ?symbol it gives blank that means when the cursor moves into the second macro the variable "symbol" is not recognised. where do I do the mistake. I hope I have made myself clear. |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
No, unfortunately, you have not made yourself clear. It is not possible
to have one sub inside another. So, if your code is working, it is not organized that way. Maybe, you should share the actual code you are using. Copy & paste it from the VBE to whatever program you use to post to the newsgroup. -- Regards, Tushar Mehta www.tushar-mehta.com Multi-disciplinary business expertise + Technology skills = Optimal solution to your business problem Recipient Microsoft MVP award 2000-2005 In article , venkat1926 @touchtelindia.net says... I have a main macro in whcih there is a variable "symbol" "symbol" is derived from an inputbox during the step by step running of the main macro if I type in the immediate window ?symbol it gives correct answer there is another macro embeeded in the main macro at the end (before end sub) After the last codestatement of main macro the macro moves to the second macro. once the step runs into the second macro if I type in the immdediate window ?symbol it gives blank that means when the cursor moves into the second macro the variable "symbol" is not recognised. where do I do the mistake. I hope I have made myself clear. |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
to Mr. Mehta
thank you. probably it is my mistake that I did not make myself clear. "embedded" is wrong word. I am calling another macro in the main macro I am giving a trivial example Public Sub test() Dim symbol symbol = InputBox("type the symbol") testone End Sub Public Sub testone() MsgBox symbol End Sub msgbox is blank what mistake am I doing? "Tushar Mehta" <tm_200310@tushar_hyphen_mehta_dot_see_oh_em wrote in message om... No, unfortunately, you have not made yourself clear. It is not possible to have one sub inside another. So, if your code is working, it is not organized that way. Maybe, you should share the actual code you are using. Copy & paste it from the VBE to whatever program you use to post to the newsgroup. -- Regards, Tushar Mehta www.tushar-mehta.com Multi-disciplinary business expertise + Technology skills = Optimal solution to your business problem Recipient Microsoft MVP award 2000-2005 In article , venkat1926 @touchtelindia.net says... I have a main macro in whcih there is a variable "symbol" "symbol" is derived from an inputbox during the step by step running of the main macro if I type in the immediate window ?symbol it gives correct answer there is another macro embeeded in the main macro at the end (before end sub) After the last codestatement of main macro the macro moves to the second macro. once the step runs into the second macro if I type in the immdediate window ?symbol it gives blank that means when the cursor moves into the second macro the variable "symbol" is not recognised. where do I do the mistake. I hope I have made myself clear. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
My first macro - doesnt work - function not recognised | Excel Worksheet Functions | |||
Create an external reference link with embedded variable | Excel Worksheet Functions | |||
Variable Chart Width (Embedded) | Excel Programming | |||
Can a variable workbook be embedded into an Excel funtion? | Excel Programming | |||
Can a variable workbook be embedded into an Excel funtion? | Excel Programming |