Numbers créer un bouton qui lance un script

Moutet

Membre confirmé
5 Avril 2017
28
0
67
Bonsoir,

J'aimerai créer un bouton dans Numbers. Si je clique sur le bouton, un script de lance.
Je ne trouve rien sur les boutons. Et pour les objets il n'y a pas la possibilité d'affecter un script.
Vous pouvez peut-être m'éclairer

Passer de Bonnes Fêtes

DM
 
Bonjour,

Il n'y a pas cette possibilité dans numbers.
Le seul moyen que je connaisses est d 'enregistrer le script comme application, et de le mettre dans le menu applescript (en haut à droite).
Voir cet exemple:
 
Bonjour,

Il n'y a pas cette possibilité dans numbers.
Le seul moyen que je connaisses est d 'enregistrer le script comme application, et de le mettre dans le menu applescript (en haut à droite).
Voir cet exemple:
Bonjour,
Cela je connais. Je l'utilise déjà mais avec automator, je pense que c'est possible si je trouve la solution je la poserai ici.
Merci pour ta réponse
 
Bonjour,
Cela je connais. Je l'utilise déjà mais avec automator, je pense que c'est possible si je trouve la solution je la poserai ici.
Merci pour ta réponse
Un script, créer pour Numbers avec Automator, i est disponible en cliquant sur Numbers ==> Service; le ou les noms de script que tu as pu créer pour numbers sont listés il n'y a plus qu'à cliquer sur celui qui t'intéresse. Ce n'est pas la solution idéale mais cela fonctionne.
 
Que tu utilises un service automator accessible dans service ou un script accessible dans la barre de menu c'est exactement la même chose !
Mais il n'est pas possible de créér de bouton dans numbers ... ni d'affecter un script à un objet, ni de déclencher un script avec une fonction...
 
Bonsoir,
Je n’ai pas la pratique d’Applescript (ou d’Automator), est-ce un système de programmation suffisamment évolué pour :
  • créer carrément le script qui dès qu’on le lancerait, ouvrirait Numbers et un fichier préalablement formaté , puis :
  • tant qu’on ne touche pas à la cellule de contrôle Trucmuche qui servirait de bouton, il laisse l’utilisateur travailler sur toutes les autres cellules (en gros une boucle Tant Que … Attendre),
  • dès que l’on clique dans la cellule fatidique, il lance une autre partie de script…?
  • après, dans les détails pour faire plus propre, avoir une autre cellule de contrôle à sélectionner pour enregistrer le fichier, quitter Numbers et surtout arrêter le script ?
 
Dernière édition:
Bonjour,
@Gerapp38
Effectivement c'est une bonne idée !
J'ai donc fait un petit script que l'on lance une seule fois après ouverture du document numbers.
Ce script tourne en boucle en tache de fond, jusqu'à la fermeture de numbers.

J'ai mis la cellule A1 comme bouton, si elle est sélectionnée, un script (à écrire, j'ai juste affiché un dialogue exécute le script) s'exécute et le cellule A2 est sélectionnée (pour ne pas rester en boucle infinie).

Seule chose à voir, est-ce que numbers n'est pas trop ralenti si il y a de gros calculs !
Bloc de code:
tell application "Numbers"
    activate
    tell the first table of the active sheet of front document
        
        repeat
            try
                set LaSelection to selection range
                
                set Lacellule to name of cell 1 of LaSelection -- nom de la cellule 1 de la selection
                if Lacellule = "a1" then
                    
                    --mettre ici le script à exécuter
                    display dialog "exécute le script !"
                    
                    set selection range to cell "A2"
                end if
            on error
                exit repeat
            end try
        end repeat
    end tell
end tell
 
  • J’aime
Réactions: Gerapp38
Bonjour,
@Gerapp38
Effectivement c'est une bonne idée !
J'ai donc fait un petit script que l'on lance une seule fois après ouverture du document numbers.
Ce script tourne en boucle en tache de fond, jusqu'à la fermeture de numbers.

J'ai mis la cellule A1 comme bouton, si elle est sélectionnée, un script (à écrire, j'ai juste affiché un dialogue exécute le script) s'exécute et le cellule A2 est sélectionnée (pour ne pas rester en boucle infinie).

Seule chose à voir, est-ce que numbers n'est pas trop ralenti si il y a de gros calculs !
Bloc de code:
tell application "Numbers"
    activate
    tell the first table of the active sheet of front document
       
        repeat
            try
                set LaSelection to selection range
               
                set Lacellule to name of cell 1 of LaSelection -- nom de la cellule 1 de la selection
                if Lacellule = "a1" then
                   
                    --mettre ici le script à exécuter
                    display dialog "exécute le script !"
                   
                    set selection range to cell "A2"
                end if
            on error
                exit repeat
            end try
        end repeat
    end tell
end tell
Bonjour,
AppleScript m’a l’air bien sympa ; maintenant que j’ai du temps et que j’ai un Mac récent, je vais essayer de me replonger dans la programmation que j’avais pratiqué en loisirs puis lors de mes débuts professionnels, puis les évolutions de carrière m’ont conduit à d’autres domaines…

De mes premières lectures, et comme le début de ton mode opératoire le laisse entendre, je crois comprendre qu’un script ne peut donc pas lancer une application, il faut que cette application soit préalablement ouverte ?

Très intéressant tout cela.
 
Non pas du tout , un script peu très bien lancer une application...
 
  • J’aime
Réactions: Gerapp38
Ah OK, j’ai dû lire en diagonale. C’est vrai que dans le temps, déjà avec visual basic, j’arrivais à jongler assez facilement entre les applications Office. Du coup c’est vrai que la gestion de boutons intégrables dans les applications (au moins les applications Apple dans un premier temps) manque un peu!