SolvedPrivate

Called subroutine within macro does not function except in Debug / F8 Step Into mode

Posted on 2015-02-10
9
22 Views
Last Modified: 2016-02-11
Hello Experts,
In the following macro the five "CallClearPlan 1 to 5 routines  when run do not clear the 5 plans and the macro ends properly.  When I Debug using F8 the macro steps through each of the 5 called Subs and does clear all fields in all 5 plans.  
How to correct this poor behavior is my question?


Sub ClearResponsesAndPlans()
'
'
'

    Response = MsgBox(prompt:="Select 'Yes' if you want to clear all 5 plans  'No' to quit.", Buttons:=vbYesNo + vbInformation)
    ' If statement to check if the yes button was selected.
  If Response = vbYes Then
        MsgBox "You selected 'Yes' to clear each of 5  Plans", vbExclamation, "Clear  Macro"
       
        Call ClearPlan1    
        Call ClearPlan2
        Call ClearPlan3
        Call ClearPlan4
        Call ClearPlan5
       
    Else
         ' The no button was selected.
         MsgBox "You selected 'No'. Press 'OK' to quit", vbCritical, "  Quit Macro "
       
  End If
 
        Sheets("Assessment").Select
        ActiveWindow.SmallScroll Down:=-87
        Range("Assess_Responses").Select
   
End Sub
~-~-~-~-~-~-~-~-~-
Below is a one of the five typical Called sub routines each of which function properly from individual commandbuttons...
~-~-~-~-~-~-~-~-~-
Sub ClearPlan1()
'
' ClearPlan1 Macro
'
'
    Range( _
        "B26:P30,B33:P37,D41:M43,D44:M46,D47:M49,D50:M52,N41:P43,N44:P46,N47:P49" _
        ).Select
   
    Selection.ClearContents
    Range("B8").Activate
End Sub


Thank you
0
Comment
Question by:Berry Metzger
  • 4
  • 4
9 Comments
 
LVL 33

Expert Comment

by:Norie
ID: 40600492
Which sheet are the ranges you want to clear on?
0
 
LVL 49

Assisted Solution

by:Rgonzo1971
Rgonzo1971 earned 250 total points
ID: 40600495
Hi,

Are your plans  in different sheets?

Regards
0
 

Author Comment

by:Berry Metzger
ID: 40600539
all of the plans are on one sheet:  "Action Plans"
0
 
LVL 33

Accepted Solution

by:
Norie earned 250 total points
ID: 40600544
Do the subs work if you specify that sheet?
Sub ClearPlan1()
'
' ClearPlan1 Macro
'
'
   Sheets( "Action Plans").Range("B26:P30,B33:P37,D41:M43,D44:M46,D47:M49,D50:M52,N41:P43,N44:P46,N47:P49" ).ClearContents
    
End Sub

Open in new window

0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

Author Comment

by:Berry Metzger
ID: 40600549
yes they do when I invoke each one using 5 separate command buttons on the same sheet.
0
 
LVL 33

Expert Comment

by:Norie
ID: 40600575
Sorry I don't follow.

If you change the code for each sub to include the sheet reference, as in the example I posted, then the code should work wherever/however it's called.

In the original code there was no sheet reference so the code would be executed on whichever sheet was active at the tim.
0
 

Author Comment

by:Berry Metzger
ID: 40600587
I awarded both of you points because both of your questions arrived just two minutes apart led me to the answer that had escaped me.  By adding a Sheets"Select "Action Plans".select statement it now works fine when called from another sheet.
Thanks for your guidance.
Berry
0
 
LVL 33

Expert Comment

by:Norie
ID: 40600609
Berry

There's no need to Select/Activate and doing so can cause problems, eg subsequent code running on wrong sheet.

You can just add the sheet reference as I did in the code I posted.
0
 

Author Comment

by:Berry Metzger
ID: 40600738
Thank you for again clearing up my error
Berry
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Unable to open excel in 2016 is slow 4 21
change VBA to show result in cells rather than debug.print 4 34
Update Match Entries 4 18
Excel copy picture into Outlook email 7 41
Introduction This Article briefly covers methods of calculating the NPV and IRR variants in Excel as well as the limitations in calculating and interpreting IRR results. Paraphrasing Richard Shockley, author of my favourite finance reference tex…
Describes a method of obtaining an object variable to an already running instance of Microsoft Access so that it can be controlled via automation.
The view will learn how to download and install SIMTOOLS and FORMLIST into Excel, how to use SIMTOOLS to generate a Monte Carlo simulation of 30 sales calls, and how to calculate the conditional probability based on the results of the Monte Carlo …
This Micro Tutorial will demonstrate in Microsoft Excel how to add style and sexy appeal to horizontal bar charts.

943 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now