View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.misc
Dave Peterson Dave Peterson is offline
external usenet poster
 
Posts: 35,218
Default IF then else VB code help

So if all those workbooks are open, then hide the windows. Any other condition,
then show the windows?

Option Explicit
Sub Auto_Open()

Dim Wkbks As Variant
Dim TestWkbk As Workbook
Dim wCtr As Long
Dim HowManyOpen As Long
Dim myWindow As Window

Wkbks = Array("book1.xls", "book2.xls", "book3.xls")

HowManyOpen = 0
For wCtr = LBound(Wkbks) To UBound(Wkbks)
Set TestWkbk = Nothing
On Error Resume Next
Set TestWkbk = Workbooks(Wkbks(wCtr))
On Error GoTo 0

If TestWkbk Is Nothing Then
'not open, stop looking
Exit For
Else
HowManyOpen = HowManyOpen + 1
End If
Next wCtr

For Each myWindow In ThisWorkbook.Windows
myWindow.Visible _
= CBool(HowManyOpen < (UBound(Wkbks) - LBound(Wkbks) + 1))
Next myWindow

End Sub

I used book1.xls, ..., book3.xls. You'll have to change the names of the
workbooks.

If you're new to macros:

Debra Dalgleish has some notes how to implement macros he
http://www.contextures.com/xlvba01.html

David McRitchie has an intro to macros:
http://www.mvps.org/dmcritchie/excel/getstarted.htm

Ron de Bruin's intro to macros:
http://www.rondebruin.nl/code.htm

(General, Regular and Standard modules all describe the same thing.)

Lost wrote:

Ok I dont know how to start with this or if its possible but here is my
delema & idea.

I have WorkbookA.xlsm that opens hidden when I open WorkbookB.xlsm thru
WorkbookF.xlsm. So when the sheet names in WorkbookB.xlsm thru
WorkbookF.xlsm changes all the external links update in WorkbookA.xlsm. Then
WorkbookA.xlsm Saves the changes. <----Works fine except it saves
WorkbookA.xlsm as a hidden workbook and we need to open it up later in the
day without any of the other 5 workbooks.

My Idea would be to find / use a VB IF statement that looks like this

IF WorkbookA.xlsm is opened with "Workbook(B,C,D,E,F)"
Then WorkbookA.xlsm is hidden
Else WorkbookA.xlsm is not hidden

Any ideas out there? I hope so ........Thanks for your effort in advance


--

Dave Peterson