Prova a installare il service pack 2 di office
salva il progetto in modalità non compatibile con office 2003-2007
se queste due opzioni non funzionano :
1. Andare in "Strumenti --> macro --> visual basic Editor" (in alternativa ALT+F11)
2. Per capire il componente che manca (file dll o ocx) bisogna aprire dal menu Strumenti la voce Riferimenti che contiene con un segno di spunta i componenti usati excel vba strumenti manca riferimento ocx dll dall'excel che abbiamo aperto. A fianco a qualche riferimento possiamo notare la voce "MANCA" ed il nome del file che sul nostro pc non c'è o non è stato trovato. Selezionando la riga con il componente mancante appena più in basso si possono recuperare informazioni utili per risolvere il problema; ad esempio si può vedere il path dove il componente viene cercato (molto spesso si tratta della cartella c:\windows\system32) e si può prendere nota del nome del file mancante.
3. Scaricare file mancante da internet (Consiglio di fare il download di questi files da fonti ufficiali e sicure tipo microsoft MSDN o similari). Una volta scaricati i file mancanti si devono posizionare proprio nel path dove l'excel li ricerca ed effetturane la registrazione.
4. Da linea di comando DOS basta posizionarsi nel path di interesse e digitare: regsvr32 nomefile registrare dll da dose premendo invio si effettua la registrazione
5. Chiudendo e riaprendo l'excel con l'errore ora dovrebbe essere tutto ok siccome il riferimento è stato ripristinato. Se dovessimo avere la necessità di deregistrare un componente (al solito ocx o dll) basta utilizzare la sintassi: regsvr32 /u nomefile.
spero che ti possa essere utile ....