Bureautique Bento continue de fonctionner mais imprime en miroir

Oui, mais non !
En faisant cela on obtient bien une impression avec le texte lisible, mais la page est imprimée en bas de page…
il faut ensuite retravailler le fichier obtenu pour déplacer la partie imprimée en haut de la page, pour cela il faut convertir le PDF obtenu en png puis faire le déplacement avec un logiciel de traitement d’images, et cela induit une perte de qualité puisque ton fichier à été pixelisé …
Oui, mais non ! :D (merci pour les PDF)
Dans Aperçu, tu prends Outil sélection rectangulaire. Tu sélectionnes la zone puis copier. Tu lances Pages, nouveau document et tu colles.
Sur mon test tout reste vectorisé.
C'est vraiment du bricolage, mais ça peut servir pour dépanner.
 
C'est vraiment du bricolage, pour 2, 3 pages ok !
Faut pas avoir à faire une impression de 50 pages ! :D

Omni fera à sa façon ! en attendant de migrer ses bases de données ...:meh:
 
Je vous remercie beaucoup ! Il est vrai que Bento est « mort » depuis 2013…
En fait du coup je vais faire plus simple : Excel + Word => fusion publipostage
Et je suis encore en mode râleur car le duo Pages + Numbers ne propose pas cette possibilité sauf à passer par un script tierce qui s’il fonctionne n’est clairement pas aussi simple ni aussi rapide que fusion publipostage de Microsoft …
 
@omni

Bonjour,

Pour faire de la fusion publipostage avec pages + Numbers, un petit applescript te fais cela.

Dans pages les champs sont définis dans format-->avancé-->définir comme texte pour paramètre fictifs, puis dans format-->plus on défini le nom du champ.
En applescript on sait les trouver et les remplacer par leur valeur récupéré dans un fichier Numbers.

Si tu es intéressé je te ferais çà .
 
@Zeltron 54
je te remercie pour ta proposition !
bien sûr que cela m’intéresse : au travail nous restons sur Ms office en partie pour cette fonction publipostage ! (Pas seulement mais au moins pour moi !). Du coup ce qui m’intéresserait serait d’apprendre à réaliser ce type de script afin de pouvoir créer mes publipostage comme et quand je le souhaite.
mon problème : je me suis déjà pencher sur les scripts et j’ai même acheté de la littérature là dessus. Mais tout d’abord mon anglais est pitoyable et mes connaissances en informatique = nulles…
du coup j’ai lâché l’affaire …
mais si j’ai un script de publipostage en exemple je suppose que je pourrais le modifier après avoir compris sa logique ?
 
toutefois je précise que j’ai déjà utilisé « PagesDataMerge » trouvé sur le site iworkautomation.com de Sal SOGHOIAN, qui présente (ait) plusieurs “utilitaires” d’automatisation de la suite IWork basés sur des scripts…
c’est très bien, mais cela reste moins pratique que la fonction publipostage de MSOFFICE. Un truc tout bête : il faut recommencer la procédure pour faire correspondre les champs à chaque nouveau publipostage… même si ton document Pages n’a pas bougé et même si ton tableur Numbers n’a pas bougé non plus…
 
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
 
Je te remercie ! Dès demain j’espère essayer ce script avec des bases actuellement sous Excel que je convertirai en Numbers ! Je te tiens au courant des résultats !
en tout cas merci beaucoup pour le temps passé et ce script !!!!
 
Ok ! j'attend tes résultats !
 
Je te met en téléchargement un petit fichier exemple qui contient un fichier pages, un fichier numbers et le script, cela te permettra de voir les exemples et de tester.
 
Impatient j’ai essayé ! Cela fonctionne … mais (oui je suis exigeant…)
  • c’est assez long en tout cas beaucoup plus que Ms j’ai souvent une centaine (voir beaucoup plus) d'enregistrements
  • je suppose qu’il faut ajouter une condition pour que si un champs est vide, il ne le remplisse pas tout en “supprimant” le paramètre fictif
  • Il n’a pas l’air de conserver le formatage des nombres (devises) ? Ainsi : 123 456,00 € devient dans le Pages : 123456.00

je sais que je suis pénible, mais en publipostage il faut que ça tourne !

mais en tout cas merci énormément pour ce script qui me permet d’appréhender cet univers !
 
pour un champ vide ?
Il faut que dans Numbers tous les champs que l'on peut trouver soit présent, c'est tout !
le script cherche les champs dans le fichier pages, puis la correspondance avec le nom colonne dans numbers pour récupérer la valeur de remplacement.

Pour le format des nombres, il ne peut pas le conserver, il est réalisé par numbers à l'affichage, le script transmet les valeurs au format texte. Il faudrait les inscrire dans Numbers au format texte.

Quant à la longueur (le temps), il n'y a rien a faire c'est du langage interprété ... de plus il enregistre chaque fichier sur le disque !...

Celà ne remplacera jamais le programme intégré de MS en langage machine, c'est juste une façon de palier au manque de la suite Apple.
 
Dernière édition:
D’accord je comprends. Pour du publipostage “basic” c’est vrai que ça fonctionne très bien. Mais donc pour du un peu plus compliqué, je resterai sur MS.
Merci d’avoir pris le temps. Et je note qu’il faudrait qu’Apple se bouge en bureautique si il veut pouvoir intéresser un peu les “entreprises”. Encore que est-ce nécessaire ? Après tout il y a MS me direz vous et même Libre Office
 
[/QUOTE]
Encore que est-ce nécessaire ? Après tout il y a MS me direz vous et même Libre Office
Apple ne voit pas l’intérêt d’en faire plus puisque des solutions tierces existent. C’est comme ça dans de nombreux domaines. Certains macusers aimeraient des solutions 100% Apple mais les priorités de Cupertino ne sont pas forcément dans l’investissement de moyens matériels et surtout humains pour un besoin déjà satisfait par ailleurs.
 
@Moonwalker
Certes je te suivrai presque… sauf qu'à ce compte pourquoi sortir une "suite" bureautique (Pages, Numbers, Keynote) alors même que de nombreuses solutions tierces existent déjà sur notre plate forme. Quitte à investir des moyens humains et matériel pour un besoin déjà satisfait par ailleurs, autant le faire "mieux" ou au moins aussi bien… (après on me répondra que sur certains aspects c'est effectievement le cas)
Il ne s'agit pas de polémiquer, mais juste de penser que cela n'est peut-être pas aussi "réfléchi" qu'on souhaiterait le croire
 
Je ne défends pas tant le point de vue d’Apple que j’essaye de me l’expliquer.

Ça coûte que tu peux engager des gens à faire autre chose que ça. Du moment que tu créés quelque chose sur macOS, tu créés aussi un enchaînement d’obligations. Ils faut que cela fonctionne, que cela fonctionne avec d’autres outils, que cela soit sécurisé, etc. Surtout si tu t’adresses à des professionnels. Il ne s’agit pas seulement de développer mais aussi d’entretenir. Les bons développeurs ne sortent pas d’une corne d’abondance, ils restent une main d’œuvre rare et chère.

Ils ont sans doute évalué la niche que représentent les utilisateurs de Pages, Numbers, Keynote et ceux qui utilisent Microsoft Office. Il y a souvent des personnes du premier groupe qui font parti du second (j’en suis moi-même un exemple). On n’utilise pas forcément ces logiciels pour le même type de travail. Ils développement la suite bureautique « maison » à leur rythme et les besoins « professionnels » ne sont pas une priorité d’autant plus qu’ils sont déjà assumés par d’autres logiciels. Ce qui est important pour Pages, Keynotes, Numbers, c’est qu’ils fonctionnent en symbiose sur macOS, iOS et iPad OS. Là me semble la priorité actuelle d’Apple les concernant, pas le publipostage.

Je pense que d’une manière générale, Apple préfère donner des outils aux développeurs pour créer des choses que les créer elle-même.