Forums Développement Multimédia

Aller au contenu

Création d'une ligne à la volée dans un tableau avec la fusion de données

PAO CODE

3 réponses à ce sujet

#1 stballot

    Ceinture Blanche

  • Members
  • Pip
  • 14 messages

Posté 27 June 2016 - 13:21 PM

Bonjour à tous,
Je dois créer pour un client une série de plusieurs étiquettes comportant un tableau avec 5 lignes et 2 colonnes. Ces étiquettes sont générées automatiquement à partir d’une basse de données excel, donc en fusion de données. Hors ce tableau comporte parfois une ligne supplémentaire. Peut-on créer cette ligne à la volée avec la fonction de fusion de données. Merci d’avance pour toutes vos réponses.

#2 Loic Aigon

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 1662 messages

Posté 06 July 2016 - 09:11 AM

Hello,

Non pas avec la fusion de données. Tu ne peux pas avoir de telles conditions. C'est soit l'un soit l'autre.

EasyCatalog à l'inverse peut gérer. Ou aloirs un script qui nettoierait les lignes de tableaux vides après coup.

Loic
www.ozalto.com

#3 #Algebre

    Ceinture Blanche

  • Members
  • Pip
  • 1 messages

Posté 06 July 2016 - 12:48 PM

Voir le messageLoic Aigon, le 06 July 2016 - 09:11 AM, dit :

Hello,

Non pas avec la fusion de données. Tu ne peux pas avoir de telles conditions. C'est soit l'un soit l'autre.

EasyCatalog à l'inverse peut gérer. Ou aloirs un script qui nettoierait les lignes de tableaux vides après coup.


Bonjour Loic,

Tu peux nous en dire plus sur le script en question stp ?

Je suis dans le même cas que Stballot à quelque chose près.

Cordialement,

Algebre

#4 Loic Aigon

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 1662 messages

Posté 20 July 2016 - 15:32 PM

Hello,

Désolé du délai je n'étais pas passé par la depuis un moment et reçu aucune notification. Un script pourrait analyser tous les tableaux et rechercher telle ligne pour en analyser le contenu. S'il est vide la supprimer si c'est possible. C'est difficile d'imaginer un script universel car chaque projet aurait ses spécificités.

Voici un exemple possible :
Image IPB

var main = function() {
var doc = app.properties.activeDocument,
tables= [], table;
if ( !doc) return;
tables = doc.stories.everyItem().tables.everyItem().getElements();
while ( table = tables.pop() ) {
  table.rows.length>1 && table.rows[1].cells.everyItem().contents.join("")=="" && table.rows[1].remove();
}
}
main();
 

Loic
www.ozalto.com



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)