bonsoir alors voilà !
Préparation du fichier PAGES.
Sélectionner un mot qui doit être fusionné (remplacé), barre de menu format—> Avancé—>Définir comme texte pour paramètre fictif.
Dans la barre de droite dans le choix “format” cliquer sur le bouton “Plus” , en bas (Tag du script) remplacer “aucun” par le nom du tag, ce sera ce nom qui sera en entête de la colonne dans Numbers.
Renouveler ceci pour chaque mot à transformer en champ (tag).
Préparation du fichier numbers.
Dans la ligne 1 entrer pour chaque colonne le nom du tag qui correspond aux données de la colonne (commencer à la colonne A).
Entrée toutes les données en ligne 2 et suivantes. (une fusion par ligne de Numbers)
Préparer un dossier vierge qui recevra les fichiers créés par la fusion.
Dans Numbers sélectionner les lignes depuis la 1 (nom, des tags) jusqu’a la dernière contenant des données à fusionner.
le fichier NUMBERS étant ouvert Exécuter le script, il demande de sélectionner le fichier pages, puis de sélectionner le dossier de réception.
Attendre la fin de la fusion (message de fin)
Tous les fichiers créés sont dans le dossier (1 par ligne) avec comme nom : (fusion ligne X)
C'est plus long à expliquer qu'à s'en servir !
Fait des tests, si besoin d'explications supplémentaires, n'hésite pas.
Chez moi, çà fonctionne !
Si besoin d'amélioration pas de problème, là je l'ai écrit à mon idée...
Bloc de code:
--Remplace les tags du fichier pages par leurs valeur du tableau Numbers(selectionné)
tell application "Numbers"
tell table 1 of sheet 1 of front document
set leschamps to {}
set a to selection range
set nbligne to count row in a --nombre de ligne de la selection
set nbcol to count columns in a
set lettrecol to {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"} --corespondante numero lettre colonne
repeat with i from 1 to nbcol
set cc to item i of lettrecol --recup lettre colonne
set lacell to cc & "1"
set aa to value of cell lacell
set leschamps to leschamps & aa --crée la liste des champs de la selection numbers
end repeat
end tell
end tell
tell application "Finder"
set Chemin to choose file with prompt "Sélectionnez le fichier pages pour fusion"
set Cheminsortie to choose folder with prompt "Sélectionnez le dossier pour recevoir les fichiers fusionnés"
set Cheminsortie to Cheminsortie as string
end tell
repeat with combien from 2 to nbligne
tell application "Pages"
activate
open Chemin
set thisDocument to front document
tell thisDocument
-- tous les TAGS
set theseTags to the tag of every placeholder text
-- compte les tags uniques
set uniqueTags to {}
repeat with i from 1 to the count of theseTags
set thisTag to item i of theseTags
if thisTag is not in uniqueTags then
set the end of uniqueTags to thisTag
end if
end repeat
-- boucle sur les tag et texte pour remplacer
repeat with i from 1 to the count of uniqueTags
set thisTag to item i of uniqueTags
repeat with j from 1 to nbcol
if thisTag is item j of leschamps then
set lacolnum to j
set lacol to item lacolnum of lettrecol
end if
end repeat
set lacell to lacol & combien
-- récupère la valeur de remplacement dans numbers
tell application "Numbers"
tell table 1 of sheet 1 of front document
set remplacementstring to value of cell lacell
end tell
end tell
-- remplace tous les tags trouvés de ce nom
set (every placeholder text whose tag is thisTag) to remplacementstring
end repeat
-- enregistre le fichier fusionné nom = numéro de la ligne
tell application "Pages"
set avecligne to combien as string
set filename to Cheminsortie & "fusion ligne " & avecligne & ".pages"
save front document in file filename
--ferme le fichier sans l'enregistrer pour fusion suivante
close front document saving no with properties
end tell
end tell
end tell
end repeat
tell application "Finder"
activate
(display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell