Gestion des boutons dans Libre Office Calc
klages
-
klages Messages postés 2 Statut Membre -
klages Messages postés 2 Statut Membre -
Bonjour,
Une feuille de calcul LibreOffice Calc comprend 500 lignes.
La première cellule de chaque ligne contient un bouton intitulé "Calcul".
Les cellules suivantes de la ligne contiennent des données numériques.
En cliquant sur un bouton quelconque, l'utilisateur déclenche une macro M (commune à tous les boutons) qui effectue un calcul à partir des données numériques de la ligne dans laquelle le bouton a été placé.
Question n° 1: Est il possible de rédiger une macro permettant de dupliquer le bouton "Calcul" sans avoir à se fatiguer à effectuer 499 copiés-collés ?
Cette macro contiendrait une boucle FOR ... NEXT, avec à l'intérieur de la boucle une commande indiquant les divers paramètres nécessaires pour la création de chaque bouton (coordonnées,
longueur, largeur, renvoi à la macro M, étiquette "Calcul" en caractères gras, etc ...
Question n°2: Est il possible de placer au début de la macro M une commande permettant de récupérer le n° de la ligne dans laquelle se situe le bouton, afin de permettra à ladite macro M
de récupérer les données numériques situées dans les différentes cellules de la ligne pour qu'elle puisse effectuer son calcul ?
J'ai cherché partout ces deux commandes dans Internet et je n'ai rien trouvé.
Merci d'avance si vous avez la réponse !
Cordialement,
Une feuille de calcul LibreOffice Calc comprend 500 lignes.
La première cellule de chaque ligne contient un bouton intitulé "Calcul".
Les cellules suivantes de la ligne contiennent des données numériques.
En cliquant sur un bouton quelconque, l'utilisateur déclenche une macro M (commune à tous les boutons) qui effectue un calcul à partir des données numériques de la ligne dans laquelle le bouton a été placé.
Question n° 1: Est il possible de rédiger une macro permettant de dupliquer le bouton "Calcul" sans avoir à se fatiguer à effectuer 499 copiés-collés ?
Cette macro contiendrait une boucle FOR ... NEXT, avec à l'intérieur de la boucle une commande indiquant les divers paramètres nécessaires pour la création de chaque bouton (coordonnées,
longueur, largeur, renvoi à la macro M, étiquette "Calcul" en caractères gras, etc ...
Question n°2: Est il possible de placer au début de la macro M une commande permettant de récupérer le n° de la ligne dans laquelle se situe le bouton, afin de permettra à ladite macro M
de récupérer les données numériques situées dans les différentes cellules de la ligne pour qu'elle puisse effectuer son calcul ?
J'ai cherché partout ces deux commandes dans Internet et je n'ai rien trouvé.
Merci d'avance si vous avez la réponse !
Cordialement,
A voir également:
- Créer un bouton de commande libreoffice calc
- Invite de commande - Guide
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer un lien pour partager des photos - Guide
- Créer un compte gmail - Guide
3 réponses
Bonjour
il faudrait mettre un exemple sur ce forum
il y a peut être la solution consistant en faisant déclencher les macro sur évènement feuille
il faudrait mettre un exemple sur ce forum
il y a peut être la solution consistant en faisant déclencher les macro sur évènement feuille
Bonjour,
Je vous remercie pour votre réponse
Voici un exemple simplifié (en réalité le calcul à effectuer est beaucoup plus compliqué, mais ce n'est pas ça qui me bloque):

L'utilisateur saisit des nombres dans les colonnes A et B, puis il clique sur "Calcul".
Une macro calcule la somme et l'affiche dans la colonne A + B.
Le problème est: comment faire connaître à la macro les 2 nombres qu'elle doit additionner ?
Et pour cela, comment lui faire connaître le n° de ligne dans laquelle sont situés ces
2 nombres ?
Autre question: comment dupliquer le bouton 500 fois de manière automatique, sans faire des copiés-collés ?
Cordialement,
Je vous remercie pour votre réponse
Voici un exemple simplifié (en réalité le calcul à effectuer est beaucoup plus compliqué, mais ce n'est pas ça qui me bloque):

L'utilisateur saisit des nombres dans les colonnes A et B, puis il clique sur "Calcul".
Une macro calcule la somme et l'affiche dans la colonne A + B.
Le problème est: comment faire connaître à la macro les 2 nombres qu'elle doit additionner ?
Et pour cela, comment lui faire connaître le n° de ligne dans laquelle sont situés ces
2 nombres ?
Autre question: comment dupliquer le bouton 500 fois de manière automatique, sans faire des copiés-collés ?
Cordialement,
Bonsoir
Le problème est: comment faire connaître à la macro les 2 nombres qu'elle doit additionner ?
il faudrait récupérer l'adresse de la cellule active
exemple
ensuite effectuer le calcul en fonction des adresses
Voir ausssi les spécialistes des macros Ici
Le problème est: comment faire connaître à la macro les 2 nombres qu'elle doit additionner ?
il faudrait récupérer l'adresse de la cellule active
exemple
sub cell_active
Dim oDoc As Object
Dim Feuille As Object
oDoc = ThisComponent
Dim CelluleActive As Object
Feuille = oDoc.getSheets.getByName("Feuille1" )
CelluleActive = ThisComponent.getCurrentSelection
Dim r as integer
Dim c as integer
r=CelluleActive.CellAddress.Row
c=CelluleActive.CellAddress.Column
msgbox "colonne " + CStr(c) + " : ligne " + CStr(r)
end sub
ensuite effectuer le calcul en fonction des adresses
Voir ausssi les spécialistes des macros Ici