Bureautique Pages

Lazard

Membre enregistré
21 Février 2012
7
0
Belgique
Je voudrais passer définitivement de Word à Pages. J'ai plusieurs documents créés avec Word qui contiennent plusieurs champs à remplir à partir d'une liste déroulante qui présente les options possibles à cliquer (un peu comme les listes de pays). Quand j'ouvre ces documents Word avec Pages, la conversion est bonne, SAUF que ces champs disparaissent ! Et je ne trouve aucune option dans Pages me permettant de créer le même processus : champ lié à une liste déroulante prédéfinie.
Y a-t-il une solution autre que de revenir à Word ??
 

zeltron54

Membre expert
Club MacG
29 Mars 2008
2 402
378
Lorraine
Bonjour,

Ta question n'attire pas les foules!
Alors non, il n'existe pas de champs avec listes déroulantes dans pages. Les seuls "Champs" existant sont appelés (texte pour paramètres fictifs) , ce sont des tags sur du texte, qui permettent de faire du publipostage avec Numbers, et pas sans mal. voir ce sujet https://forums.macg.co/threads/bent...mprime-en-miroir.1366261/page-3#post-14170629

Pour Faire ce que tu demandes, je réaliserais des fichiers texte, un par choix, contenant ma liste de choix.
Ensuite à la place des champs, je ferais une simple insertion. Ton fichier pages ouvert ainsi que le fichier texte de la liste de choix, Tu pourrais procéder par :
  • Simple copier - coller
  • Soit glisser - déposer
  • Soit insertion par la dictée vocale (2 fois touche fn puis lire à haute voix ton texte à insérer).
  • Soit un script, à écrire, qui te propose ta liste de choix, et insère ton choix à l'emplacement du curseur avec possibilité de remplacer le texte sélectionné.
---Explication: dans pages à la place des champs tu mets le nom de la liste de choix, tu sélectionnes ce nom, tu lances le script (depuis le menu script dans la barre de menu) qui ouvre la liste, tu fais ton choix et le script fait un remplacement du nom par ton choix.

C'est bien plus long et compliqué que dans word, mais ! si c'est le seul truc qui te retient pour passer à pages (de plus, c'est pas le même prix)

Dis moi si tu es intéressé par ce genre de script , j'essayerai de te réaliser cela.
 

zeltron54

Membre expert
Club MacG
29 Mars 2008
2 402
378
Lorraine
Bonjour,
J'ai eu un peu de temps, j'en ai profité pour te faire le petit script qui te permettra d'avoir une liste de choix.

Le tuto de mise en place:
- Créer les fichiers listes
Ouvrir l’application TextEdit au format texte (pas rtf).
Entrer les éléments de la liste (1 par ligne)
Enregistrer sous, le nom de la liste , le format texte avec “Encodage format texte” Occidental (Mac OS Roman).
Créer un dossier “Pages listes de choix” dans le dossier document, destiné à regrouper toutes les listes (attention ce nom et ce chemin seront écrit dans le script, donc immuable pas erreur)

-Créer le script
Ouvrir Editeur de script qui se trouve dans Application—>Utilitaires
Clic sur le bouton “Nouveau document” en bas à gauche
Dans la fenêtre qui s’ouvre faire un copier coller du script.
Faire “enregistrer sous” le nom “Pages listes de choix”, format de fichier “Application”

Dans les préférences de l’application “Editeur de script cocher les lignes “Afficher le menu des scripts dans la barre de s menus” et “Afficher les script de l’ordinateur”

Dans la bibliothèque Utilisateurs, (on y accède depuis le finder avec un clic sur Aller tout en appuyant sur alt), ouvrir le dossier “Scripts”—>”Applications”—>”Pages” (si un de ces dossiers n’existe pas, le créer) et mettre le nouveau script créé dans ce dossier.

Après çà dans la barre des menus en haut à droite devrait apparaître une icône “script”, en cliquant sur cet icône, à condition que l’application Pages soit ouverte, on voit le menu “Pages listes de choix”

Voilà tout est en place.

-Utilisation dans pages
Dans pages à la place des champs tu écris le nom de la liste de choix qui doit être utilisée.

Lorsque tu veux (remplir le champs, changer le nom par ton choix), tu double clic sur le nom (afin de le sélectionné) puis tu lances le script (dans le menu script de la barre de menu).

Le script te propose ta liste et tu choisis, clic sur ok et il remplace la sélection par ton choix.
Si le script ne trouve pas le nom de la liste il te propose de sélectionner une liste existante sur ton ordi.


Il sera demandé d’autoriser l’application à accéder au sytème ainsi qu’au Finder Il faut accordé ces autorisation dans les préférences système —> Confidentialité—>Accessibilité.
Lors de la première utilisation (en fonction de l’OS)
un message d’erreur (« Pages listes de choix » demande l’autorisation de contrôler « System Events ». Acceptez si vous voulez lui permettre d’accéder aux documents et aux données contenues dans « System Events » et d’y effectuer des actions.)
clic sur OK un nouveau message demande d’ouvrir préférences sytème pour donner l’accès
Clic sur ouvrir préférences système clic sur le cadenas taper son mot de passe puis cocher l’application “pages listes de choix)
Lors du lancement suivant une fenêtre demandant de modifier l’accès du script clic sur modifier le script s’ouvre, le refermer.
Puis il demande d’autoriser le contrôle du Finder accepter.

Maintenant cela devrait fonctionner. dur ! dur ! les sécurités d’Apple , heureusement cela ne se fait qu’a la première utilisation…
Bon tests !
Le script:
Bloc de code:
--obtient le texte selectionné dans pages
tell application "Pages" to activate
tell application "System Events" to tell process "Pages"
    click menu item "copier" of menu "Édition" of menu bar 1
end tell

tell application "Finder"
    activate
    set lefichier to the clipboard
end tell


tell application "Finder"
    --vérifier si existe un fichier de ce nom (au chemin ...  ajuster le chemin) si oui ok - si non ouvrir choix des listes existantes.
    if exists (path to documents folder as text) & "Pages Listes de choix:" & lefichier & ".txt" then
        set monFichier to (path to documents folder as text) & "Pages Listes de choix:" & lefichier & ".txt" as alias -- récupère le chemin du fichier
    else
        --proposer choix du fichier liste"
        set monFichier to choose file with prompt "Sélectionnez le fichier texte liste de choix"
    end if
    open for access monFichier -- ouvre ce fichier en lecture
    set vartoto to read monFichier -- lit le fichier et le met dans la variable vartoto
    close access monFichier -- ferme le fichier
    
    -- crée la liste de choix avec le contenu du fichier
    set lalist to {}
    set nb to count paragraph of vartoto
    repeat with i from 1 to nb
        set lalist to lalist & paragraph i of vartoto
    end repeat
end tell
-- affiche la liste de choix
activate
set nameList to lalist
set choix to (choose from list the nameList with prompt "Sélectionner : " with title "Choix") as string
if choix is not "false" then -- Bouton Annuler
    set the clipboard to choix -- copie le choix dans le presse papier
    
    --Coller le presse papier dans page
    tell application "Pages" to activate
    tell application "System Events" to tell process "Pages"
        click menu item "coller" of menu "Édition" of menu bar 1
    end tell
end if
 
  • J’aime
Réactions: baron