A me non dà errore.
Assicurati d'aver seguito questi passaggi:
Apri Windows Security
Clic destro sull'icona di Windows
Seleziona "Impostazioni"
"Privacy e Sicurezza" -> "Windows Security" -> "Apri Windows Security"
Imposta l'esclusione
Clicca "Protezione da virus e minacce"
Scorri fino a "Impostazioni di Protezione da virus e minacce"
Sotto "Esclusioni" clicca "Aggiungi o rimuovi esclusioni"
Clicca "Aggiungi un'esclusione"
Seleziona "Cartella"
Scegli la cartella dove si trova il file Excel
Permessi specifici per Excel
Nelle stesse impostazioni di sicurezza
Aggiungi anche un'esclusione per il processo
Seleziona "Processo"
Aggiungi "EXCEL.EXE"
Verifica
La cartella dovrebbe apparire nella lista delle esclusioni
EXCEL.EXE dovrebbe apparire nei processi esclusi
Poi apri il menu Sviluppo:
Clicca sulla prima icona sulla sinistra "Visual Basic"
Nella finestra che si apre clicca su "Strumenti":
Ora clicca su "Riferimenti":
Assicurati che questa voce abbia la spunta:
Assicurati che anche questa voce abbia la spunta:
Se non le vedi scorri la finestrella fino a trovarle e spuntale.
Questa è la parte della macro che effettua i controlli:
Private Function ControllaRiferimenti() As Boolean
Dim refMissing As String
refMissing = ""
' Controlla MSXML2
On Error Resume Next
Dim testXML As MSXML2.XMLHTTP60
Set testXML = New MSXML2.XMLHTTP60
If Err.Number <> 0 Then
refMissing = refMissing & "- Microsoft XML, v6.0" & vbNewLine
End If
' Controlla ADODB
Dim testStream As ADODB.stream
Set testStream = New ADODB.stream
If Err.Number <> 0 Then
refMissing = refMissing & "- Microsoft ActiveX Data Objects 6.1" & vbNewLine
End If
On Error GoTo 0
If refMissing <> "" Then
MsgBox "Mancano i seguenti riferimenti:" & vbNewLine & vbNewLine & _
refMissing & vbNewLine & _
"Aprire l'Editor VBA (Alt+F11), " & _
"menu Strumenti->Riferimenti e selezionare i riferimenti mancanti.", vbCritical
ControllaRiferimenti = False
Else
ControllaRiferimenti = True
End If
End Function
Sub AggiornaArchivio()
If Not ControllaRiferimenti() Then Exit Sub
' Verifica 7-Zip
If Dir("C:\Program Files\7-Zip\7z.exe") = "" Then
MsgBox "7-Zip non trovato. Installare 7-Zip nel percorso predefinito.", vbCritical
Exit Sub
End If
' Verifica permessi cartella
On Error Resume Next
Open ThisWorkbook.Path & "\test.tmp" For Output As #1
Close #1
Kill ThisWorkbook.Path & "\test.tmp"
If Err.Number <> 0 Then
MsgBox "Permessi insufficienti sulla cartella. Verificare i diritti di scrittura.", vbCritical
Exit Sub
End If
On Error GoTo ErrorHandler
Non ci capisci nulla? Neanch'io
.
Se il problema continua speriamo in
deus ex machina. Che significa? Non lo so. Volevo solo vantarmi con un po' di latino, che non conosco.
La prosperità si accompagni alla salute e alla felicità
Baciccia