Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Ciao Claudio,
Effettivamente il problema e' generato dall'assenza nella colonna A di qualsiasi dato e questo perche' la routine che copia i dati solo se si verifica la condizione SI presente nella Colonna A del Foglio 3 dovrebbe essere l'ultima prima di uscire cbEsci e l'errore si verifica solo se uno Apre l'UserForm e chiude immediatamente con pulsante ESCI senza fare nessuna azione .
Non avendo fatto partire nessuna azione , non trova nessun dato .
La riga evidenziata in giallo quando si verifica l'errore e'
.Offset(1).Resize(j, UB2).Value = vArrOut
So che la soluzione immediata sarebbe aggiungere un pulsante cbSalvaSI che fa partire la routine e lasciare al cbEsci solo Chiudi UserForm ...... ma se possibile vorrei evitarlo
Ho caricato su DropBox il File depurato dei dati sensibili a questo link
https://www.dropbox.com/s/i8i9ucfix5ioawx/Claudio%20Appello.xlsm?dl=0
Nella procedura cbEsci_Click nel modulo di codice della Userform Appello, sostituisci l'ultimo blocco di codice:
UB2 = UBound(vArrOut, 2)
With destRng
.Parent.UsedRange.ClearContents
.Offset(1).Resize(j, UB2).Value = vArrOut
.Resize(1, UB2).Value = srcRng.Cells(0, 2).Resize(1, UB2).Value
Call FormatReport(.CurrentRegion)
End With
con:
If oDic.Count Then
UB2 = UBound(vArrOut, 2)
With destRng
.Parent.UsedRange.ClearContents
.Offset(1).Resize(j, UB2).Value = vArrOut
.Resize(1, UB2).Value = srcRng.Cells(0, 2).Resize(1, UB2).Value
Call FormatReport(.CurrentRegion)
End With
End If
===
Regards,
Norman