Solved

VBA to open workbook to specific tab

Posted on 2014-10-23
6
197 Views
Last Modified: 2014-10-24
Hi Experts,

Hoping that you can help with two issues that I am having with the vba below.   First issues is that I can't get the Application.AskToUpdateLinks to work,  I've place this on different lines and the alert still comes up.   The second is that once the file is open I would like it to open and display the Store Summary tab.  Currently it is opening to the last saved tab.

Sub ActualOpen()


    Dim wb As Workbook
    Dim fso As FileSystemObject
    Dim myFolder As Folder
    Dim myFile As File
    Dim newestFile As File
    Dim ws As Worksheet
    
    Set fso = New FileSystemObject
    
    '--------------------------------------------------------------------------------
    'For test purposes, I am using the "My Documents" folder... this needs to change
    ' To use whatever folder you need
    '--------------------------------------------------------------------------------
    
    Set myFolder = fso.GetFolder("\\SSFilePrint\GROUPSHARE\Store Planning\LSP Shared\International\Finance\VSBA & ROW")
    '\\SSFilePrint\GROUPSHARE\Store Planning\Projects\International\Store Schedules\JDE Store report
    

    
    Application.ScreenUpdating = False
    Application.AskToUpdateLinks = False
    Application.Calculation = xlCalculationManual
    
    For Each myFile In myFolder.Files
        Select Case UCase(fso.GetExtensionName(myFile.Path))
            Case "XLS", "XLSM", "XLSB", "XLSX":
        
                If newestFile Is Nothing Then
                    Set newestFile = myFile
                ElseIf myFile.DateLastModified > newestFile.DateLastModified Then
                    Set newestFile = myFile
                End If
        End Select
    Next
        
                
        If Not newestFile Is Nothing Then
            
            Application.Workbooks.Open newestFile.Path
            Set wb = Application.Workbooks(newestFile.Name)
            Set ws = wb.Sheets("Store Summary ")
        End If


End Sub

Open in new window

0
Comment
Question by:jmac001
6 Comments
 
LVL 15

Expert Comment

by:David L. Hansen
ID: 40400550
Handling the Open event (see the dropdown boxes at the top of the VBA environment) you can just do this...

Private Sub Workbook_Open() 
     Worksheets("theWorkSheetName").Activate
End Sub

Open in new window

0
 
LVL 15

Accepted Solution

by:
Haris Djulic earned 400 total points
ID: 40400552
Hi,

i made certain changes to the last part of your code:

        If Not newestFile Is Nothing Then
            
            Application.Workbooks.Open newestFile.Path , false 'added param FALSE to disable link updates
            Set wb = Application.Workbooks(newestFile.Name)
            Set ws = wb.Sheets("Store Summary")
			ws.activate ' you should activates selected sheet
        End If

Open in new window

0
 

Author Comment

by:jmac001
ID: 40400564
Hi samo4fun,

That worked.  Any thoughts on the  Application.AskToUpdateLinks = False placement?
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 15

Expert Comment

by:Haris Djulic
ID: 40400573
I changed the following line to disable the links update :

Application.Workbooks.Open newestFile.Path , FALSE  ---added param FALSE to disable link updates
0
 
LVL 21

Assisted Solution

by:Ejgil Hedegaard
Ejgil Hedegaard earned 100 total points
ID: 40402960
It does not matter where Application.AskToUpdateLinks = False is placed in the code.
It is not workbook specific, but change the Excel setting for opening all workbooks.

You probably have links to not available files, and that is another issue.
Excel ask if you want to Continue (= open the file without updating the links) or Edit the links.

Specify not to update links in the Open statement ignores all links, and that is probably not what you want.

To automatically update links, the solution Application.AskToUpdateLinks = False, with a "normal" Open statement, is the correct one to use, but you have to edit the links to work.
0
 

Author Closing Comment

by:jmac001
ID: 40403018
Thanks samo4fun and Ejgil.  samo4fun I awarded you the majority of the points as both solutions you gave me did work. But I realized after trying the solution for the alerts that I still had issues which is why I awarded Ejgil 100 points for their explanation on why I would still be see the popup windows.
0

Featured Post

Are your AD admin tools letting you down?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

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

Some code to ensure data integrity when using macros within Excel. Also included code that helps secure your data within an Excel workbook.
Do you use a spreadsheet like Microsoft's Excel?  Have you ever wanted to link out to a non excel file on your computer or network drive?  This is the way I found to do it!
The viewer will learn how to use a discrete random variable to simulate the return on an investment over a period of years, create a Monte Carlo simulation using the discrete random variable, and create a graph to represent the possible returns over…
This Micro Tutorial will demonstrate the scrolling table in Microsoft Excel using the INDEX function.

778 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