Bonjour à tous.

J'ai créé une app. avec Delphi7 qui créer et formater des rapports dans Excel à partir d'un template que j'ai fait. Ce template comporte 20 pages, sur la même feuille Excel. Une fois mon rapport terminé, je lance un procédure qui supprime le formattage des pages qui n'ont pas été remplies (pour ne pas imprimer des pages de rapports vides). Tout fonctionne parfaitement, mais il y a un seul truc que je n'ai pas réussi à faire. J'ai mis deux cases à cocher, assemblés en groupe, sur chacune des pages de ce rapport et je n'arrive pas à trouver la syntaxe qui pourrait me permettre de sélectionner chacun des groupes qui ne sont pas utilisés, pour les supprimer.

Voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Création de l'application Excel
 
ExcelApp := CreateOleObject('Excel.Application');
...
 
// Suppression des colonnes vides et des cases à cocher
 
         // Il y a aucun numéro de série, on efface cette partie du tableau
         else
           if ExcelApp.Worksheets[intPage].Cells[intLigneCourante, intColCourante].Value = '' then
              begin
                ExcelApp.Worksheets[intPage].Range[ExcelApp.Worksheets[intPage].Cells[intLigneCourante,
                intColCourante - 1], ExcelApp.Worksheets[intPage].Cells[intLigneCourante + 7,
                intColCourante + 10]].Clear ;
                // On efface les cases à cocher
                strNomObjet := 'Objet' + IntToStr(intPage) ;
                ExcelApp.Worksheets[intPage].Shapes(strNomObjet).Delete ;
              end ;
La partie <ExcelApp.Worksheets[intPage].Shapes(strNomObjet).Delete ;> me renvoi un message d'erreur comme suit: "Membre introuvable"

Merci à l'avance pour votre aide.