récupérer la valeur d'une celulle excel, en c#
Bonsoir
Avec visual studio 2019, j'essaie de savoir si une valeur donnée est présente dans une colonne Excel
Je commence par déclarer mes objets
Code:
1 2 3
| Microsoft.Office.Interop.Excel.Workbook xlBook;
Microsoft.Office.Interop.Excel.Application xlApp;
Microsoft.Office.Interop.Excel.Worksheet xlSheet; |
Une autre procédure les initialise
Code:
1 2 3 4 5 6 7 8 9
| // récupération du fichier à lire
OpenFileDialog frm = new OpenFileDialog();
if (frm.ShowDialog() == DialogResult.OK)
{
xlApp = new Microsoft.Office.Interop.Excel.Application(); {
xlBook = xlApp.Workbooks.Open(frm.FileName);
// Récupération de la feuille à lire
xlSheet = (Microsoft.Office.Interop.Excel.Worksheet)xlBook.Worksheets.get_Item(Le_Numero_De_Ma_Feuille);
} |
Jusque là tout va bien!
Quand une autre procédure essaie de lire le fichier excel
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| private bool this_VerifyAnalytAccount(string strToFind)
{
bool bFound = false;
string strReaden;
for (uint iRowReaden = 1; iRowReaden < 65; iRowReaden++)
{
strReaden = xlSheet.Cells[iRowReaden, 1].ToString();
if (strReaden == strToFind)
{
// Le code est trouvé.
bFound = true;
iRowReaden = 65;
}
}
return(bFound);
} |
strReaden me renvoie la valeur: System.__ComObject, pour toutes les cellules ce qui n'est pas du tout ce que je cherche !!!
et pourtant quand j'écris dans un fichier excel j'utilise la syntaxe
Code:
xlSheet.Cells[ligne, colonne] = "machaine";
Je pense que pour lire une valeur la syntaxe est différente, mais je n'ai pas trouvé.
Merci