Ciao, ho creato una macro che mi apre tutti i file dentro la cartella x.
Ora posto il codice (che al momento fa il controllo solo su tutti gli sheet di un file xls), non so se però usando questo potrei fare un ciclo su tutte le cartelle aperte (o chiuse ma dubito) ed avere un risultato.
Al momento funziona su gli sheets di una sola cartella di exel.
Avrei bisogno che una volta aperti tutti i file XLS all'interno della cartella facesse una ricerca su ogni file XLS e mi desse un risultato
codice:
Sub tabella()
Dim totale, parziale, ultima As Long
Dim i As Integer
Dim foglio As Worksheet
Worksheets("CERCA").Range("BOTT, cancella1").ClearContents
ultima = Sheets("CERCA").Range("D65536").End(xlUp).Row
totale = 0
i = 6
For Each foglio In ActiveWorkbook.Sheets
If foglio.Name <> "CERCA" And foglio.Name <> "nome foglio" And foglio.Name <> "MASTER" Then
parziale1 = Application.WorksheetFunction.SumIf(foglio.Range("$E$10:$G$26"), Range("CERCA!$I$6"), foglio.Range("$G$10:$G$26"))
parziale2 = Application.WorksheetFunction.SumIf(foglio.Range("$E$30:$G$37"), Range("CERCA!$I$6"), foglio.Range("$G$30:$G$37"))
If (parziale1 + parziale2) > 0 Then
Sheets("CERCA").Range("G" & i).Value = foglio.Name
Sheets("CERCA").Hyperlinks.Add Anchor:=Range("A" & i), Address:="", SubAddress:="'" & foglio.Name & "'!A9", ScreenTip:="Vai al foglio " & foglio.Name, TextToDisplay:=foglio.Name
Sheets("CERCA").Range("E" & i).Value = parziale1 + parziale2
i = i + 1
End If
End If
Next foglio
Sheets("CERCA").Range("E" & ultima).Formula = "=SUM(E6:E" & ultima - 1 & ")"
MsgBox "Controllo Terminato", vbInformation
End Sub