Condividi tramite

Macro in excel per ricercare files in esplora risorse

Anonimo
2016-09-23T20:27:28+00:00

Avrei bisogno di creare una macro in excel che mi permetta di aprire la finestra esplora risorse di un determinata cartella e visualizzarne solo i files pdf il cui nome inizia con "2014" , in pratica sarebbe come attivare una ricerca da esplora risorse.

Grazie per L'attenzione

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
2016-09-23T22:37:49+00:00

Ciao pb_61,

Avrei bisogno di creare una macro in excel che mi permetta di aprire la finestra esplora risorse di un determinata cartella e visualizzarne solo i files pdf il cui nome inizia con "2014" , in pratica sarebbe come attivare una ricerca da esplora risorse.

Per visualizzare solo i files pdf il cui nome inizia con 2014 in una determinata folder, 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 sFileName As String, sFullName As String

    Dim Res As Long

    Dim fd As FileDialog

    Dim arrFile As Variant

    Dim sPath As String

    Dim sStr As String, aStr As String

    Dim i As Long, ictr As Long, iPos As Long

    Dim sMsg As String, iButtons As Long, sTitle As String

    Const sPercorso As String = _

                    "C:\Utenti\PB\Documents"        '<<=== Modifica

    Const sFileMask As String = "2014"              '<<=== Modifica 

    With Application

        Set fd = .FileDialog(msoFileDialogFilePicker)

        sStr = .PathSeparator

    End With

    If Right(sPercorso, 1) = sStr Then

        sPath = sPercorso

    Else

        sPath = sPercorso & sStr

    End If

    With fd

        .Title = "Seleziona i files di interessee"

        .Filters.Add "File Pdf", "*.pdf"

        .FilterIndex = 1

        .AllowMultiSelect = True

        .InitialFileName = sPath

        .InitialFileName = "A*.pdf"

        Res = .Show

        If Res Then

            With .SelectedItems

                ictr = .Count

                ReDim arrFile(1 To ictr)

                For i = 1 To ictr

                    sFullName = Trim(.Item(i))

                    iPos = InStrRev(sFullName, aStr)

                    sFileName = Mid(sFullName, iPos + 1)

                    arrFile(i) = sFileName

                Next i

            End With

            aStr = Join(arrFile, vbNewLine)

            sMsg = "Dalla cartella " _

                 & sPercorso _

                 & " i seguenti file sono stati selezionati:" _

                 & vbNewLine & vbNewLine _

                 & aStr

            iButtons = vbInformation

            sTitle = "REPORT"

        Else

            sMsg = "Hai cancellato la selezione!"

            iButtons = vbCritical

            sTitle = "SELEZIONE CANCELLATO"

        End If

        Call MsgBox( _

             Prompt:=sMsg, _

             Buttons:=iButtons, _

             Title:=sTitle)

    End With

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?

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

0 risposte aggiuntive

Ordina per: Più utili