Le samedi 10 novembre 2007 21:31, letrange a écrit :
> Bonjour,
> J'essaie de bricoler un petit agenda avec O.calc.
> J'ai une case B2 contenant à l'ouverture la date du jour [(aujourdhui()]
> Je voudrais, à l'aide d'un bouton et une macro, pouvoir remonter ou avancer
> dans le calendrier mais ce qui marchait en basic autrefois semble difficile
> ici : nouvelle date=date affichée +1 (ou date-1), à chaque clic et
> toujours en B2. Est-ce possible ?
> (les données sont dans une autre feuille et importées avec [recherchev ])
Oui, c'est assez simple à faire.
Je te donne un exemple qui me sert à changer le temps indiqué dans une
cellule. J'ai 4 boutons (2 pour les minutes, 2 pour les secondes) qui
déclenchent les macros AjouterUne*** ou EnleverUne***
L'exemple est à adapter bien sûr.
Sub ModifierTemps(Temps As Date)
Dim oDocument As Object, oFeuille As Object, oSelectionEnCours As Object
Dim oControleur As Object
Dim oCoordonnees As Object, oCelluleEnCours As Object
Dim nLigne As Integer, nColonne As Integer
oDocument = ThisComponent
oControleur = oDocument.CurrentController
oFeuille = oControleur.ActiveSheet
oSelectionEnCours = oDocument.CurrentSelection
' Vérification que seule une cellule est sélectionée
If oSelectionEnCours.supportsService("com.sun.star.table.Cell") Then
' Récupération des coordonnées de la cellule
oCoordonnees = oSelectionEnCours.CellAddress
nColonne = oCoordonnees.Column
nLigne = oCoordonnees.Row
oCelluleEnCours = oFeuille.getCellByPosition(nColonne,nLigne)
'On modifie la valeur de l'heure
oCelluleEnCours.Value = oCelluleEnCours.Value + Temps
End If
End Sub
Sub AjouterUneSeconde()
Dim TempsAAjouter As Date
TempsAAjouter = TimeValue("00:00:01")
ModifierTemps(TempsAAjouter)
End Sub
Sub AjouterUneMinute()
Dim TempsAAjouter As Date
TempsAAjouter = TimeValue("00:01:00")
ModifierTemps(TempsAAjouter)
End Sub
Sub EnleverUneSeconde()
Dim TempsAEnlever As Date
TempsAEnlever = TimeValue("00:00:01")
ModifierTemps(-TempsAEnlever)
End Sub
Sub EnleverUneMinute()
Dim TempsAEnlever As Date
TempsAEnlever = TimeValue("00:01:00")
ModifierTemps(-TempsAEnlever)
End Sub
--
Michel Grentzinger
OpenPGP key ID : B2BAFAFA
Available on http://www.keyserver.net
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]