Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
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