Bonjour, j'ai un script dans une page web qui ouvre un objet Excel
Puits ajoute dans une cellule une valeur.
A ce moment la il y a une macro (Workbook_SheetChange) dans le Excel qui complète sertin champ an fonction de cette cellule.
Jusqu’a présent je remplissais (dans Workbook_Open()) dans une listebox en fonction d'une valeur charger précédemment (depui une bdd)
sa sa marche très bien, mais le problème arrive quand je veut sélectionné une valeur par défaut de ma listebox, j'ai fais :
sauf que a la première exécution de ma macro le Workbook_Open() ce lance bien, mais Sheets(1).Cells(9, 1) n'est pas encore renseigné donc null ( le classeur n'est pas encore ouvert)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 ... While (SQLResult.EOF <> True) temp = temp + 1 Sheets(1).Shapes("Drop Down 51").ControlFormat.AddItem RTrim(SQLResult.Fields("projet_code")) + " - " + RTrim(SQLResult.Fields("projet_intitule")) 'capture l'index du numéro de projet If (RTrim(SQLResult.Fields("projet_code")) =Sheets(1).Cells(9, 1) ) Then indexItemASelectionner = temp End If SQLResult.MoveNext Wend ' défini l'index de la listebox Sheets(1).Shapes("Drop Down 51").ControlFormat.Value = (indexItemASelectionner - 1) ...
Par contre, une foi le classeur ouvert, ci je lance manuellement ma macro, sa marche impeccable !
Comment je peu faire, avez vous une idée?
Partager