Pourquoi avec ce code, la cellule F18 augmente de 2 ? parfois 4 , parfois 6 ( apparemment sensibilité de la vitesse cpu.. alors que je lui demande une augmentation de 1)
Code : Tout sélectionner
REM ***** BASIC *****
Sub Alerte
'Feuille = ThisComponent.Sheets.getByIndex("Service")'Sélectionner la feuille
'ThisComponent.CurrentController.setActiveSheet(Feuille)
with thisComponent.Sheets.getByName("Feuille1")
maZone=.getCellRangeByName("B1:D100")
End With
oListener = CreateUnoListener( "Lis_", "com.sun.star.util.XModifyListener" )
maZone.AddModifyListener(oListener)
End Sub
Sub oListenersRemove
' Procédure à appeler pour arrêter le listener
maZone.RemoveModifyListener(oListener)
End Sub
Sub Lis_Disposing
' Procédure nécessaire à l'arrêt du listener même si on n'y fait rien
End Sub
Sub Lis_Modified(oEvent)
Dim monDocument As Object, lesFeuilles As Object
Dim maFeuille As Object, maZone As Object
dim odoc as object, oFeuil as object
dim CellSource as object
dim cellcible as object
monDocument = ThisComponent
oDoc = ThisComponent
oFeuil = oDoc.sheets(0)
CellSource = oFeuil.GetCellrangeByName("F1")
CellCible = oFeuil.GetCellrangeByName("F18")
valF1 = Cellsource.value
if (valF1 >= 1) AND (valF1 < 19) then
CellCible.value = (CellCible.value + 1)
else
CellCible.value = 0
endif
End Sub