Macro per aprire cartella

Anonimo
2017-09-15T09:01:34+00:00

Buongiorno, non sono molto pratico, credo che sia una banalità ma non ci riesco.

Vorrei creare una macro con excel 2010 chi mi apra una deteminata cartella in rete aziendale tipo Q:\Attività\lavori...   solo questo.

Grazie, saluti.

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2017-09-15T15:45:50+00:00

Ciao Andrea,

nonostante non sia esperto sono riuscito a farla funzionare.

Bravo! L'unica cosa che devi portare è fede e speranza! 

Ti chiedo però, posso fermarmi all'apertura della cartella senza necessariamente aprire il file?

Prova di sostituire il codice precedente con la seguente versione:

'=========>>

Option Explicit

'--------->>

Public Sub Tester()

    Dim WB As Workbook

    Dim sPathSeparator As String, sPath As String

    Dim FName As Variant

    Const sPercorso As String = "**Q:\Attività\lavori**"         '<<=== Modifica

    sPathSeparator = Application.PathSeparator

    sPath = sPercorso & sPathSeparator

    If Right(sPercorso, 1) = sPathSeparator Then

        sPath = sPercorso

    Else

        sPath = sPercorso & sPathSeparator

    End If

    FName = FileOpen(sPath, _

                     "File di Andrea", _

                     "*.xls; *.xlsx; *.xlsm, *.xlsb")

    If FName <> "" Then

        Set WB = Workbooks.Open(FName)

    End If

End Sub

'--------->>

Public Function FileOpen(initialFilename As String, _

                  Optional sDesc As String = "Excel (*.xls)", _

                  Optional sFilter As String = "*.xls") As String

    With Application.FileDialog(msoFileDialogOpen)

        .ButtonName = "&Open"

        .initialFilename = initialFilename

        .Filters.Clear

        .Filters.Add sDesc, sFilter, 1

        .Title = "File Open"

        .AllowMultiSelect = False

        If .Show = -1 Then

            FileOpen = .SelectedItems(1)

        End If

    End With

End Function

'<<=========

===

Regards,

Norman

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

4 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2017-09-18T07:36:23+00:00

    Ciao Andrea,

    Perfetto, grazie 1000.

    Ti ringrazio per il cortese riscontro.

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2017-09-18T06:11:40+00:00

    Perfetto, grazie 1000.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2017-09-15T14:35:19+00:00

    Ciao Andrea,

    non sono molto pratico, credo che sia una banalità ma non ci riesco.

    Vorrei creare una macro con excel 2010 chi mi apra una deteminata cartella in rete aziendale tipo Q:\Attività\lavori...   solo questo.

    Prova qualcosa del genere:

    • Alt+F11 per aprire l'editor di VBA
    • Alt+IM per inserire un nuovo modulo di codice
    • Nel nuovo modulo vuoto, incolla il seguente codice:

    '=========>>

    Option Explicit

    '--------->>

    Public Sub Tester()

        Dim WB As Workbook

        Dim sStr As String, sPath As String

        Const sPercorso As String = _

                                        "**Q:\Attività\lavori**"           '<<=== Modifica

        Const sFile As String = "Pippo.xlsx"                    '<<=== Modifica

        sStr = Application.PathSeparator

        sPath = sPercorso & sStr

        If Right(sPercorso, 1) = sStr Then

            sPath = sPercorso

        Else

            sPath = sPercorso & sStr

        End If

        Set WB = Workbooks.Open(Filename:=sPath & sFile)

    End Sub

    '<<=========

    • Alt+Q per chiudere l'editor di VBA e tornare a Excel
    • Salva il file con l’estensione xlsm
    • Alt+F8 per aprire  la finestra di gestione delle macro
    • Seleziona Tester
    • Esegui

    ===

    Regards,

    Norman

    Grazie Norman, gentilissimo.

    nonostante non sia esperto sono riuscito a farla funzionare.

    Ti chiedo però, posso fermarmi all'apertura della cartella senza necessariamente aprire il file?

    Grazie ancora.

    Andrea.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2017-09-15T10:41:22+00:00

    Ciao Andrea,

    non sono molto pratico, credo che sia una banalità ma non ci riesco.

    Vorrei creare una macro con excel 2010 chi mi apra una deteminata cartella in rete aziendale tipo Q:\Attività\lavori...   solo questo.

    Prova qualcosa del genere:

    • Alt+F11 per aprire l'editor di VBA
    • Alt+IMper inserire un nuovo modulo di codice
    • Nel nuovo modulo vuoto, incolla il seguente codice:

    '=========>>

    Option Explicit

    '--------->>

    Public Sub Tester()

        Dim WB As Workbook

        Dim sStr As String, sPath As String

        Const sPercorso As String = _

                                        "**Q:\Attività\lavori**"           '<<=== Modifica

        Const sFile As String = "Pippo.xlsx"                    '<<=== Modifica

        sStr = Application.PathSeparator

        sPath = sPercorso & sStr

        If Right(sPercorso, 1) = sStr Then

            sPath = sPercorso

        Else

            sPath = sPercorso & sStr

        End If

        Set WB = Workbooks.Open(Filename:=sPath & sFile)

    End Sub

    '<<=========

    • Alt+Q per chiudere l'editor di VBA e tornare a Excel
    • Salva il file con l’estensione xlsm
    • Alt+F8 per aprire  la finestra di gestione delle macro
    • Seleziona Tester
    • Esegui

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento