Macro à la seconde...
Masseur
-
yclik Messages postés 3874 Date d'inscription Statut Membre Dernière intervention -
yclik Messages postés 3874 Date d'inscription Statut Membre Dernière intervention -
Bonjour tous le monde,
Je voudrais savoir si il est possible sur ods de produire un bouton qui m'affiche instantanément l'heure à la seconde près. Et aussi si je peux lui demander d'arrondir automatiquement à 59s partant du principe que toute minute commencée est due.
PS : je cherche aussi un programmeur à l'aise sur les appli. de gestion de temps.
Merci à la communauté et à ce site.
Alain.
Je voudrais savoir si il est possible sur ods de produire un bouton qui m'affiche instantanément l'heure à la seconde près. Et aussi si je peux lui demander d'arrondir automatiquement à 59s partant du principe que toute minute commencée est due.
PS : je cherche aussi un programmeur à l'aise sur les appli. de gestion de temps.
Merci à la communauté et à ce site.
Alain.
6 réponses
-
Bonsoir
la macro ci dessous à associer à un bouton
sub heure rem variables dim document as object dim oSheet as object oSheet = ThisComponent.sheets.GetByName("feuille1") oSheet.getCellRangeByName ("A22").value = (now) end sub
avec A22 la cellule destination à mettre au format heure-
-
Salut le Forum
Explication : https://forum.openoffice.org/fr/forum/setopic_1977-macro.html+bouton
Mytå
-
-
Merci Mytå, mais en fait je sais faire un bouton, ma macro est déjà très avancée mais je ne sais pas trop comment interpréter les données de yclik.
Je veux qu'en appuyant sur un bouton, l'heure que j'entre actuellement à la main s'auto-génère par ce bouton et ce, à la seconde.
Cordalement/
Alain-
Re le Forum
Tu n'as pas lu le lien . . .
Une fois celui-ci dessiné, il doit être en principe sélectionné par défaut (matérialisé par des « poignées de sélection » vertes). Faire un clic droit sur le bouton et choisir dans le menu contextuel « contrôle ». Choisir l'onglet « Evénements », et à droite de la ligne « Lors du déclenchement » cliquer sur le bouton [...] pour choisir la macro. Un autre dialogue s'affiche, cliquer sur « Assigner » pour aller sélectionner la macro (elle doit préexister). Valider les dialogues.
Mytå
-
-
Ok, sur l'onglet évènement je suppose que je dois cliquer sur la 1ère ligne "Approuver l'action" puis dans la fenêtre suivant encore "Approuver l'action" mais ensuite, quelle macro dois-je sélectionner ?
Parmi elles il y a bien le nom de mon logiciel avec pour sous-dossier un document nommé "Standard" mais il n'y a rien dedans.
Cordialement
Alain -
Bonjour
Pour inclure la macro dans le classeur
-Copier le code sur le forum sans les N° de lignes
-ouvrir le classeur
-ALT+F11
sélectionner le classeur ouvert dans la fenêtre de sélection de la boite de dialogue avec le +
-bouton "Nouveau" et OK
-Coller le code dans l'onglet macro
-enregistrer avec l'icône "enregistrement"
-fermer la fenêtre par la croix en haut à gauche
sur le classeur affecter la macro comme indiqué dans le commentaire de Myta -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Ok ça marche, vous êtes des Dieux, je suis hyper content. Par contre je voulais que mes secondes soient arrondies à 59s sur le principe de "toute minute commencée est due".
2eme élément, sachant que j'ai 2 champs horaires à renseigner, un au commencement l'autre à la fin, comment créer un bouton chacun sachant que lorsque je copie mon bouton et tente d'en modifier la destination ça change aussi celle de l'autre ?
Alain -
Bonsoir
a tester
REM ***** BASIC *****
sub heure
rem variables
dim document as object
dim oSheet as object
Dim monheure as date, messecondes as integer, maminute as integer, monheure_due as date
oSheet = ThisComponent.sheets.GetByName("feuille1")
monheure=(now)' extraction heure
msgbox(monheure) ' pour test à supprimer si besoin
messecondes =VAL(Right(monheure,2)) 'extraction secondes en numérique
maminute = VAL(MID(monheure,15,2) 'extraction minute en numérique
If messecondes >0 then monheure_due = CDATE(LEFT(monheure,14)&(maminute+1)&":00") else monheure_due = monheure
rem resulat dans les cellules
oSheet.getCellRangeByName ("A22").value = monheure_due
oSheet.getCellRangeByName ("A23").value = monheure_due
end sub