ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   major errors with macro code - VB question constantly doing "ELSE" part of if statement (https://www.excelbanter.com/excel-programming/391183-major-errors-macro-code-vbulletin-question-constantly-doing-else-part-if-statement.html)

[email protected][_2_]

major errors with macro code - VB question constantly doing "ELSE" part of if statement
 
Hello

I have this part of my macro - No matter whether I click on yes to the
question or no it does not work........it is constanly running the
else macro whether or not you click "Yes" or "No"....

I've only just realised and it has caused me major problems.


If resp = MsgBox("Do you want to run macro1?", vbYesNo +
vbQuestion) = vbYes Then
Application.Run "'Workbook1 - Test.xls'!Macro1"
Else
Application.Run "'Workbook1 - Test.xls'!Macro2"
End If
Application.ScreenUpdating = True
If resp = MsgBox("Do you want to run macro3?", vbYesNo +
vbQuestion) = vbYes Then
Application.ScreenUpdating = False
Application.Run "'Workbook1 - Test.xls'!Macro3"
Else
Application.Run "'Workbook1 - Test.xls'!Macro4"
End If


In the above example it is always macros2 and 4 that are being
run.....

Please please please someone help,

I've spent so many hours working on this entire process for it to fail
on me......

thanks in advance for any help you may be able to provide,

Andrea


Tom Ogilvy

major errors with macro code - VB question constantly doing "ELSE"
 
If MsgBox("Do you want to run macro1?", _
vbYesNo + vbQuestion) = vbYes Then
Application.Run "'Workbook1 - Test.xls'!Macro1"
Else
Application.Run "'Workbook1 - Test.xls'!Macro2"
End If

Application.ScreenUpdating = True
If MsgBox("Do you want to run macro3?", _
vbYesNo + vbQuestion) = vbYes Then
Application.ScreenUpdating = False
Application.Run "'Workbook1 - Test.xls'!Macro3"
Else
Application.Run "'Workbook1 - Test.xls'!Macro4"
End If

--
Regards,
Tom Ogilvy

" wrote:

Hello

I have this part of my macro - No matter whether I click on yes to the
question or no it does not work........it is constanly running the
else macro whether or not you click "Yes" or "No"....

I've only just realised and it has caused me major problems.


If resp = MsgBox("Do you want to run macro1?", vbYesNo +
vbQuestion) = vbYes Then
Application.Run "'Workbook1 - Test.xls'!Macro1"
Else
Application.Run "'Workbook1 - Test.xls'!Macro2"
End If
Application.ScreenUpdating = True
If resp = MsgBox("Do you want to run macro3?", vbYesNo +
vbQuestion) = vbYes Then
Application.ScreenUpdating = False
Application.Run "'Workbook1 - Test.xls'!Macro3"
Else
Application.Run "'Workbook1 - Test.xls'!Macro4"
End If


In the above example it is always macros2 and 4 that are being
run.....

Please please please someone help,

I've spent so many hours working on this entire process for it to fail
on me......

thanks in advance for any help you may be able to provide,

Andrea



JE McGimpsey

major errors with macro code - VB question constantly doing "ELSE" part of if statement
 
You're comparing the variable 'resp' to a comparision between the result
of the MsgBox and vbYes. The latter comparison returns True/False, and
the former then is always False.

Try either:

If MsgBox("Do you want to run macro1?", _
vbYesNo + vbQuestion) = vbYes Then
Application.Run "Macro1"
Else
Application.Run "'Macro2"
End If

Or

Dim resp As Long
resp = MsgBox("Do you want to run macro1?", _
vbYesNo + vbQuestion)
If resp = vbYes Then
Application.Run "Macro1"
Else
Application.Run "'Macro2"
End If





In article . com,
" wrote:

Hello

I have this part of my macro - No matter whether I click on yes to the
question or no it does not work........it is constanly running the
else macro whether or not you click "Yes" or "No"....

I've only just realised and it has caused me major problems.


If resp = MsgBox("Do you want to run macro1?", vbYesNo +
vbQuestion) = vbYes Then
Application.Run "'Workbook1 - Test.xls'!Macro1"
Else
Application.Run "'Workbook1 - Test.xls'!Macro2"
End If
Application.ScreenUpdating = True
If resp = MsgBox("Do you want to run macro3?", vbYesNo +
vbQuestion) = vbYes Then
Application.ScreenUpdating = False
Application.Run "'Workbook1 - Test.xls'!Macro3"
Else
Application.Run "'Workbook1 - Test.xls'!Macro4"
End If


In the above example it is always macros2 and 4 that are being
run.....

Please please please someone help,

I've spent so many hours working on this entire process for it to fail
on me......

thanks in advance for any help you may be able to provide,

Andrea



All times are GMT +1. The time now is 02:10 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com