Incrémenter une valeur avec Rechercher/Remplacer sous Indesign

Bonjour, je voudrais savoir comment je pourrais utiliser la fonction Rechercher/Remplacer d'Indesign pour remplacer et incrémenter des valeurs.
Je m'explique. En fait, je viens de finir un catalogue pour un client, et pour l'instant, tout les produits portent la référence "WAV/RE43", et j'aimerais les remplacer par "FRA056", puis "FRA057", "FRA058,... et ainsi de suite, dans l'ordre de lecture.
Les deux paramètres sont donc l'incrémentation, et de ne pas partir de 0, mais d'un nombre arbitraire.
J'ai pensé à utiliser un script vu que j'ai des connaissances de base en javascript, et donc utiliser une boucle pour incrémenter le tout, mais j'avoue ne pas savoir comment combiner cela avec Rechercher/Remplacer.Voilà, j'espère avoir été aussi clair que possible.
Merci d'avance.

jmlevy wrote:
L'ordre dans lequel se place les nombres ne respecte néanmoins pas vraiment le sens de lecture.
D'après les différents tests que j'ai put faire, l'ordre des incrémentations se fait tel que la recherche opère, et elle opère du premier élément créé, au dernier […]
Absolument, c'est l'ordre chronologique qui est pris en compte pour la numérotation, pas la position sur la page. Mais dans les tests que j'ai faits, l'ordre de lecture corresoond à l'ordre chronologique.
L'ordre chronologique ne fonctionne plus si je rajoute un bloc e haut de la page, après avoir créé tout les autres, et d'autant plus vu que mon client me fait échanger des places de produit. Sachant que chaque produit est représenté par un bloc de texte, et non une ligne.
[…] indépendament de l'ordre des sous obets du calque au quel ils appariennent.
Je sais qu'il est possible d'intervenir directement sur le "code" de la forme visible que l'on peut voir dans le mode naturel.
Je ne suis pas certain de comprendre…
Excuse moi, je n'ai pas été très claire. Je voulais pas parler du mode d'editeur.
Mais je ne parviens pas à accéder à un mode editeur qui me permette de voir l'arborescence total des mes blocs, et donc de pouvoir intervenir sur son ordre.
Ce n'est surement pas destiné à ce type d'utilisation j'imagine.
Car je sais que mon client va me demander de rajouter des produits au milieu des autres, ou d'en déplacer certain, et vu qu'il l'a déjà fait auparavent, mes blocs ne sont de toute façon pas disposé par rapport à leur création chronologique.
Je viens de tester : j'ai ajouté une ligne entre deux existantes et tout est renuméroté en conséquence.
Comme je le disais plus haut, 1 produit=1 bloc de texte, et non une ligne.

Similar Messages

  • Incrémenter à chaque run

    Bonjour.
    Est-il possible d'incrémenter une variable à chaque éxécution ? C'est à dire que Labview garderait en mémoire la valeur n et qu'à l'éxécution suivante, il me ressorte la valeur n+1
    Nicolas

    Oui.
    Tu peux utiliser un "Action Engine" ou mieux reconnus sous le terme de "Functional Global Variable".
    Le concepte est simple.  Tu as une boucle avec un "shift register" qui est non-initiale'.  Chaque fois que l'application l'appelle, il se souvient de la derniere valeur.  Tu pourrais donc avoir au sein de ton logiciel (si tu utilises un "State Machine"), un etat qui s'occuppe de contenir la derniere valeur.  Et tu peux l'incrementer chaque fois que tu appelles cet etat. 
    La solution la plus simple est d'incorporer un "Action Engine" a ton code.  Tu peux faire une rechercher sur ce terme.  Il y a quelques exemples de disponibles.
    Cependant, des que tu fermes ton application (exe) ou tu fermes LabVIEW, la valeur en memoire est perdu..  Si tu veux maintenir cette valeur meme si LabVIEW est fermer (ou ton ordi est fermer), je suggere que tu sauvegarde la derniere valeur dans un fichier.

  • Rechercher/Remplacer GREP

    Bonjour à tous,
    Je voudrais savoir comment faire une manoeuvre par Rechercher/Remplacer GREP complexe, TRÈS COMPLEXE pour moi en fait...
    Je cherche à formater dans un Style de Paragraphe et de Caractère bien précis, TOUT ce qui est présentement en texte barré dans l'exemple qui suit. Je veux donc que la recherche me retourne tout entre: (chaque début de chapitre suivi d'un # et d'une fin de paragraphe=CHAPITRE \d+\r) et (Chaque instance ou se trouvera le chiffre un en début de paragraphe suivi d'un espace et d'un mot entièrement en majuscules avec ou sans apostrophe=^1 [\u\u+|\u'\u+])
    CHAPITRE 5
    1 L’arche dans le temple de Dagon.
    6 Punition des Philistins.
    1 L’ARCHE de l’Éternel ayant été pendant sept mois au pays des Philistins,
    Je me doute qu'une combinaison de Lookahead et de Lookbehind pourrait sans doute me retourner ce que je veux, à travers une recherche, pour ensuite demander à ce résultat d'être formaté comme je le désire. Toutefois, j'ai tenté le coup de NOMBREUSES manières qui n'ont qu'échouées...
    Dites-moi comment il serait possible de faire cela ou si cela n'est pas possible...

    Bonjour,
    Merci pour cette réponse tardive. Cependant, j'avais réussi à trouver une solution... en fait, une combinaison de 2 GREP qui font tout le travail!!!
      (?<=CHAPITRE \d)(^)((.*)|(.*)(.*)|(.*)(.*)(.*)|(.*)(.*)(.*)(.*)|(.*)(.*)(.*)(.*)(.*)|(.*)(.*)(.*)(.*)( .*)(.*))(?=1 \u)
    et
    (?<=CHAPITRE \d\d)(^)((.*)|(.*)(.*)|(.*)(.*)(.*)|(.*)(.*)(.*)(.*)|(.*)(.*)(.*)(.*)(.*)|(.*)(.*)(.*)(.* )(.*)(.*))(?=1 \u)
    Et le tour est joué!!! Ca c'est satisfaisant!!!
    Merci à tous! et désolé de ne pas avoir averti que c'était solutioné.

  • Fonction Pause et incrémentation d'une valeur

    Bonjour à tous, 
    dernièrement je cherchais à savoir comment mettre une pause dans une boucle While afin de figer la génération de mon graphe. Le problème étant que maintenant, je souhaiterai que lorsque j'ai réalisé ma pause j'ai la possibilité d'incrémenter manuellement ( de 0.1 ou 1 à chaque impulsion réalisée par un BP ) la valeur de ma courbe . Comment dois-je faire ? Sachant que je bloque ma boucle while, donc lorsque mon graphe est figé impossible de modifier ma valeur...
    voici ma boucle de pause, je souhaite donc à l'aide d'un BP incrémenter de 1 la valeur de " Ramp pattern" lorsque je suis en pause
    Cordialement

    Hello,
    Voilà comment je ferais:
    Ci-joint le vi en 2012 et 2011.
    Francis M | Voir mon profil
    Certified LabVIEW Developer
    Pièces jointes :
    Geoff54_LV012.vi ‏28 KB
    Geoff54_LV2011.vi ‏20 KB

  • Détecter une incrémenta​tion ou une décrémenta​tion d'une variable

    Bonjour à tous,
    j'aimerais tout simplement créer un bout de code permettant de detecter si une de mes variables s'incrémente ou décrémente.
    Cordialement

    salut, et la structure évènementielle? structure event? sur le changement de valeur ?
    http://zone.ni.com/reference/fr-XX/help/371361H-01​14/lvhowto/cfgevents/
    A+
    Luc Desruelle | Voir mon profil | LabVIEW Code & blog
    Co-auteur livre LabVIEW : Programmation et applications
    CLA : Certified LabVIEW Architect / Certifié Architecte LabVIEW
    CLD : Certified LabVIEW Developer / Certifié Développeur LabVIEW

  • Comment mesurer le temps d'évolution d'un signal dans un graphe et comparer ce temps mesuré avec une valeur connue?

    Pour mon application, je suis obligé de mesurer le temps d'évolution d'un signal acquis (de t1 à t2) par une entrée analogique d' un module NI 9203, et comparer cette valeur avec une valeur connu afin de juger si ce temps d'évolution est correct ou non.
    J'espere que vous me donner un exemple qui figure la situation citée ci-dessus.

    Hello.
    To get an answer on this part of forum you should post in English. Another possibility is to post on the french forum here.
    Could you explain us more which problems you have? Could you attach your code and explain to us where are you bloked? It should be helpfull.
    Thanks in advance.
    Best Regards. 
    Message Edité par R_Duval le 04-23-2008 12:14 PM
    Romain D.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    NIDays 2010 : Conférence mondiale de l'instrumentation virtuelle
    >>Détails et Inscription<<

  • Est il possible de faire correspondre la couleur d'un bouton avec une valeur numérique ?

    Bonjour à tous,
    J’aimerais faire correspondre l’intensité de la couleur d’un bouton (ou d’une led) avec une valeur numérique. Est ce que quelqu'un à une idée par hasard ?
    Merci par avance,
    ManDeb  
    Solved!
    Go to Solution.

    I don't speak French but according to your example you want this?
    Also, I just realized the vi already posted the same thing, just that the boolean was false when i ran it so it looked like it wasn't working to me
    Message Edited by elset191 on 05-20-2009 10:52 AM
    Tim Elsey
    LabVIEW 2010, 2012
    Certified LabVIEW Architect
    Attachments:
    colors.vi ‏10 KB

  • Comment configurer une carte 6052E avec le max livré avec NIDAQmx9.8 sous windows 7

    Comment configurer une carte 6052E avec le max livré avec NIDAQmx9.8 sous windows 7

    Vous devez pouvoir voir les panneaux de tests, de même pour l'option de configuration, j'ai aussi DAQmx 9.8. Cf captures en pièce jointe.
    -Que voulez vous configurer exactement ?
    Aussi, répondez à mes autres questions si jamais vous ne voyez pas exactement la même chose que moi.
    Cordialement
    Victor F. | Application Engineer
    Certified LabVIEW Developer | Certified TestStand Architect
    National Instruments France
    Pièces jointes :
    MAX1.jpg ‏73 KB
    MAX2.jpg ‏51 KB

  • Labwindows sortir d'une boucle avec un bouton externe

    Bonjour,
    Je suis actuellement en train de developper un banc de test automatisé. Celui-ci doit effectuer plusieurs cycles.
    Je génére ces cycles via une boucle for que j'incremente. Pour des raison de sécurité, je souhaiterais que l'utilisateur du banc ai la possibilité de stopper la boucle ( finir le cycle en cours et sortir de la boucle).
    Pour cela j'aimerais utiliser un Bouton sur la face avant. J'utilise la fonction GetUserEvent() qui vient controler si le bouton est activé ou non.
    Cela fonctionne, mais le probleme est qu'il faut appuyer sur le bouton à un moment précis ( je suppose pendant le moment ou la fonction scanne la valeur du bouton).
    Sous LabVIEW, il y a la possibilité d'interagir et de valider les boutons a n'importe quel moment, et de gerer le type de déclenchement des boutons.
    existe t-il sous labwindows une fonction/un parametre a mettre a jour qui permettrait d'avoir une interaction avec le PANEL a n'importe quel moment. Puis que la variable soit testée a chaque incrementation de boucle.
    Je vous remercie,
    Cordialement,

    Bonjour,
    Je vous remercie de votre réponse: en effet votre code fonctionne pour sortir de la boucle. Le point bloquant, et qu'il faut encore un timing précis pour appuyer sur le bouton Arret
    N'y a t'il pas une solution qui permet de garder la main sur l'interface principale de facon à pouvoir cliquer sur le bouton n'importe quand.
    Le Langage C ne permet pas de prendre en compte directement la modification, ( lecture à la suite les unes des autres des instructions) mais si l'on peut appuyer n'importe quand sur le bouton et que la fonction s'arrete a un moment précis dans la boucle suite a l'appel de la fonction correspondante ce serait déjà tres bien.
    une autre solution est de scanner le bouton  entre chaque instruction de la boucle, mais j'aimerais beaucoup éviter cela de maniere à ne par ralentir le programme et surtout car je ne trouve pas cela trés propre.
    Cordialement

  • Est-il possible de cummuler plusieurs "rechercher/remplacer" en un seul ?

    Bonjour
    je cherche un moyen d'assembler plusieurs "rechercher/remplacer" par un seul !
    Pour l'instant je fais une première passe (rechercher/remplacer OBJET pour formater les blocs textes) puis une deuxième passe pour nettoyer le texte.
    Y a-t-il un moyen de demander à InDesign d'enchainer ces deux manipulations (en dehors d'un script que je ne suis pas en mesure de faire) ?
    Merci
    Remy

    Une autre solution est d'éditer le fichier (texte) d'instructions utilisé par le script FindChangeList fourni avec InDesign, à l'exemple de celui-ci : http://abracadabrapdf.net/utilitaires/utilitaires-indesign/indesign-jsfindchangelist-en-ve rsion-francaise/

  • Appel d'une dll avec un callback d'une autre fonction

    Bonjour.
    J'ai une carte d"acquisition vidéo dont je souhaite réaliser les drivers sous labview. Une DLL est fournie avec le manuel SDK d'utilisation.
    Mais je coince à ce niveau :
    Register Draw callback function: RegisterDrawFun()
    API:
    int RegisterDrawFun(DWORD nport, DRAWFUN(DrawFun), LONG nUser)
    Parameters:
    DWORD nport Channel Index
    DRAWFUN(DrawFun) callback function
    LONG nUser user data
    Callback function explanation:
    void CALLBACK DrawFun(LONG nPort,HDC hDc,LONG nUser)
    nPort channel number
    hDc devide context of offscreen surface is similar to the DC of display window
    nUser user data
    Return Values:
    If the function succeeds, the return value is 0.
    Remarks:
    When the video is previewed with offcreen mode, the application call this function to get the device context of offscreen surface so that the application can draw lines, strings, rectangles on the surface of video.
    C'est le callback de la fonction "drawfun"  que je ne sais pas mettre en oeuvre. Et dans quelle DLL de windows ce trouve cette fonction car elle n'est pas dans la DLL fournie.
    Pourriez vous aussi me dire , comment obtient t'on le "handle" d'une valeur contenu dans un indicateur pour le donner en argument d'un appel à une DLL.
    Merci d'avance pour votre aide.
    Cordialement,
    MH.

    Dupliqué >> http://forums.ni.com/t5/LabVIEW/appel-d-une-dll-av​ec-un-callback-d-une-autre-fonctionappel-d-une/m-p​...

  • Appel d'une dll avec un callback d'une autre fonctionappel d'une dll avec un callback d'une autre fonction

    Bonjour.
    J'ai une carte d"acquisition vidéo dont je souhaite réaliser les
    drivers sous labview. Une DLL est fournie avec le manuel SDK
    d'utilisation.
    Mais je coince à ce niveau :
    Register Draw callback function: RegisterDrawFun()
    API:
    int RegisterDrawFun(DWORD nport, DRAWFUN(DrawFun), LONG nUser)
    Parameters:
    DWORD nport Channel Index
    DRAWFUN(DrawFun) callback function
    LONG nUser user data
    Callback function explanation:
    void CALLBACK DrawFun(LONG nPort,HDC hDc,LONG nUser)
    nPort channel number
    hDc devide context of offscreen surface is similar to the DC of display window
    nUser user data
    Return Values:
    If the function succeeds, the return value is 0.
    Remarks:
    When the video is previewed with offcreen mode, the
    application call this function to get the device context of offscreen
    surface so that the application can draw lines, strings, rectangles on
    the surface of video.
    C'est le callback de la fonction "drawfun"  que je ne sais pas mettre
    en oeuvre. Et dans quelle DLL de windows ce trouve cette fonction car
    elle n'est pas dans la DLL fournie.
    Pourriez vous aussi me dire , comment obtient t'on le "handle" d'une
    valeur contenu dans un indicateur pour le donner en argument d'un appel à
    une DLL.
    Merci d'avance pour votre aide.
    Cordialement,
    MH.

    Salut,
    Tu dois utiliser un "Call Library Function Node".  Je ne saurais comment traduire en francais. 
    Ca se situe a l'interieur des fonctions de connectivite sous libraries et executables.
    Lorsque tu installes le "Call Library Function Node" sur ton diagramme, tu dois par-apres le configurer.
    Tu cliques (2x) sur l'icone et tu choisi la fonction dll auquel tu veux envoyer des valeurs.  Une fois choisi, tu peux joindre les parametres.

  • Incrémenter un numéro dans un champs de formulaire Adobe

    Bonjour,
    J'utilise un formulaire qui a été construit sous adobe acrobat.
    Ce formulaire comporte un champs avec un numéro chronologique . J'aimerai qu'à chaque ouverture de ce ficher, ce numéro chronologique s'incrémente.
    Comment faire ?
    Merci à vous.
    Enola

    Tout est là : Contacter l’assistance clientèle
    Y compris :
    Appelez le :
    France: 01 71 23 01 96
    Belgique: 027119960
    Suisse: 044 800 9581
    Du lundi au vendredi, 9am - 5pm CET

  • Acquisition d'une valeur et mise dans un tableau à chaque pression d'un bouton

    Bonjour à tous,
    Je n'ai pas trouvé de solutions existantes sur le forum, et débutant sur labview, je me permets de poser la question ici.
    J'ai un dispositif de mesure composé d'un capteur de force relié par liaison com à mon ordinateur. J'ai fait un vi qui me permet à chaque pression du bouton mesure, de m'afficher la valeur lue sur l'appareil. Je souhaiterais à chaque fois que j'appuie sur le bouton Mesure", que mes valeurs soient enregistrées à la suite dans un tableau. Auriez vous un exemple de vi qui puisse éclairer ma lanterne ?
    Le top du top serait de pouvoir inscrire une valeur manuellement à chaque fois que je prend ma mesure de manière à ce que je puisse avoir un tableau de deux colonnes, avec d'un coté les valeurs rentrées manuellement et de l'autre les valeurs mesurées avec mon appareil. Je pourrais ainsi tracer un graphe XY.
    Merci d'avance si vous pouvez m'aider !

    - pour que les valeurs de "bytes read" forment un Tableau, une solution est de "sortir" sa valeur sur un tunnel indexé
    (tunnel "normal" sur le boucle while interne et ensuite tunnel indexé sur la boucle while externe.
    ps :
    Pourquoi utilises-tu une variable locale "bytes read" .... alors que son terminal se trouve juste à côté ?
    L'utilisation excessive de la structure séquence et une utilisation totalement inutile d'une variable locale ...
    me donne l'impression que tu n'as pas compris le principe de base de LabVIEW, soit le "flux de données".
     

  • Comparer deux chaine contenant une valeure numerique variable

    Bonjour à tous,
    je cherche une maniere simple de comparer deux chaines contenant une valeure numerique variable au milieux mais sans tenir compte de cette valeure. Par exemple les chaine suivante :
    Debut_chaine_00_Fin_de_chaine
    Debut_chaine_01_Fin_de_chaine
    Debut_chaine_02_Fin_de_chaine
    comparées avec une chaine de reference me renverrai "true" si le format de la chaine est reconu soit "Debut_chaine_" une valeure numérique sur 2 digit et " _Fin_de_chaine" ou False dans le cas contraire.
    Aurriez vous une idée pour ce genre de fonction ?
    Merci
    Sébastien
    Résolu !
    Accéder à la solution.

    au lieu de "supérieur à -1", tu peux utiliser directement "supérieur ou égal à 0"
    (c'est juste pour faire le malin  )
    [0-9][0-9] == [0-9]{2}

Maybe you are looking for