Problème référence Excel lors de transfert de .NET 1.x ver .NET 2.0
Bonjour!
Voici mon problème. On m'a amené une application écrite en .NET 1.x et on m'a demandé de la rendre fonctionnelle en .NET 2.0. J'ai donc ouvert le fichier solution, passé au travers du "wizard" afin de le traduire et après tout ça je l'ai exécuté. Comme je m'en doutais, ça n'a pas marché.
Cette application utilise Excel pour faire des exportations ou je ne sais trop et maintenant, ça ne fonctionne plus.
Voici l'erreur que ça me donne:
The type or namespace name 'Excel' could not be found (are you missing a using directive or an assembly reference?)
Et ce sur la ligne suivante:
De plus, si j'ouvre les références à droite, il y a un point d'exclamation jaune à côté de Excel et VBIDE... J'ai essayé d'ajouter des composant .COM comme j'ai déja fait dans d'autres application, mais rien n'y a fait...
Est-ce que quelqu'un aurait une idée pour m'aider? Voici le code qui utilise Excel:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| private void CreerListeExcel()
{
Excel.Application oXL;
Excel._Workbook oWB;
Excel._Worksheet oSheet;
try
{
//Start Excel and get Application object.
oXL = new Excel.Application();
oXL.Visible = true;
//Get a new workbook.
oWB = (Excel._Workbook)(oXL.Workbooks.Add(Missing.Value));
oSheet = (Excel._Worksheet)oWB.ActiveSheet;
// Create an array to multiple values at once.
string[,] saNames = new string[m_nbElem+1,2];
int Ligne = 0;
// Pour chaque Email de la chaine, l'ajouter au tableau pour l'ajout
// dans un fichier excel.
while( m_Destinataire.IndexOf(";") != -1 )
{
saNames[ Ligne, 0] = m_Destinataire.Substring(0,(m_Destinataire.IndexOf(";")));
// Supprimer le courriel
m_Destinataire = m_Destinataire.Remove(0,m_Destinataire.IndexOf(";")+1);
Ligne++;
}
Ligne++;
// Determine la case Final du range
string nbElem = "A" + Ligne.ToString();
// Pour un range donnée affecté les valeur du tableau de courriel
oSheet.get_Range("A1",nbElem).Value2 = saNames;
}
catch (System.Exception ex)
{
string bob = ex.Message.ToString();
}
} |
Merci beaucoup!;)