Ces seuils devaient reprendre les références de cellules spécifiques.
Voici la macro qui a résout mon problème :
Code : Tout sélectionner
REM ***** BASIC *****
Sub MainPiaf(oEv As Object)
Dim fA As Object, Bouton As Object
Dim nomBouton As String, valeurMini As Long, valeurMaxi As Long
fA = Thiscomponent.CurrentController.ActiveSheet
bouton = oEv.Source
nomBouton = bouton.Model.Name
Select Case nomBouton
Case "pg_COG"
valeurMini = fA.GetCellRangeByName("Min_COG").Value
valeurMaxi = fA.GetCellRangeByName("i10").Value
Case "pg_COO"
valeurMini = fA.GetCellRangeByName("g11").Value
valeurMaxi = fA.GetCellRangeByName("i11").Value
End Select
Bouton.Model.setPropertyValues(Array("SpinValueMin","SpinValueMax","DefaultSpinValue"),Array(ValeurMini,valeurMaxi,ValeurMini))
End Sub
Merci à Piaf, Chbok et Zeguedon
______________________________________________________________________________________________________________________________
Voici le début du fil :
Bonjour,
J'ai reçus de l'aide pour réaliser une macro qui modifie les seul de minima et maxima d'un contrôle de type compteur.
Elle avait fonctionné, pourtant maintenant je ne parviens plus à l'utiliser.
Je vais dans l'onglet évènement des propriétés de mon compteur.
J'assigne une macro à la réception du focus.
Mais rien quand je clique sur le contrôle (compteur) il fonctionne sans avoir modifié sa valeur de minima et maxima...
Code : Tout sélectionner
REM ***** BASIC *****
Sub TestMinMaxp()
Dim oDoc As Object , Feuille As Object
Dim CellMin,CellMax As Object
Dim oForm,oCompteur As Object
oDoc = ThisComponent
Feuille = oDoc.getSheets.getByName("Joueur1")
CellMin = Feuille.getCellRangeByName("V114")
CellMax = Feuille.getCellRangeByName("X114")
oForm = Feuille.getDrawPage.getForms.getByIndex(0)
oCompteur = oForm.GetByName("Compteur13")
oCompteur.SpinValueMin = CellMin.Value
oCompteur.SpinValueMax = CellMax.Value
End Sub
Sub PP_Cognition()
Dim oDoc As Object , Feuille As Object
Dim CellMax As Object
Dim oForm,oCompteur As Object
oDoc = ThisComponent
Feuille = oDoc.getSheets.getByName("Joueur1")
CellMax = Feuille.getCellRangeByName("j120")
oForm = Feuille.getDrawPage.getForms.getByIndex(0)
oCompteur = oForm.GetByName("ppCOG")
oCompteur.SpinValueMax = CellMax.Value
End Sub
J'ai même été dans macro pour l'activer manuellement mais cela ne semble rien faire de plus (rien).
Fermé et rouvrir le fichier n'y change rien non plus.
Auriez vous une idée du problème?