IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Word Discussion :

Placer le curseur juste avant un signet


Sujet :

VBA Word

  1. #1
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut Placer le curseur juste avant un signet
    Bonjour,
    C'est une problème bête mais j'arrive pas a m'en sortir pour autant : j'ai un signet, qui me sert de point de départ pour coller tout un tas d'info dans un ordre précis, pour que ça apparaisse dans le même ordre. Pour ça je me suis dit : ba je selection mon signet, moveleft count = 1 et hop ! sauf qu'il bloque sur la ligne qui fait le mouvement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    doc.range.bookmarks.item("monsignet").range.select
    selection.moveleft unit:=wdcharacters count:=1
    Désolé pour le code sans respect de la case, je suis loin du pc qui me permet de coder (on a qu'un seul pc dans la boite qui a internet, je suis le seul codeur, oui c'est lourd, mais vous connaissez les bureaucrates ...)
    Expert en recherche google caféinomane

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Perso, avant un move, je fais un collapse.

    Voilà un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ActiveDocument.Bookmarks("S1").Range.Select
    Selection.Collapse direction:=wdCollapseStart
    Selection.MoveLeft unit:=wdCharacter, Count:=1
     
    Selection.TypeText "o"
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  3. #3
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut
    Bonjour,
    Merci pour ton aide, malgré ça j'ai l'erreur qui est invoqué encore une fois, cette fois si sur la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Selection.Collapse direction:=wdCollapseStart
    Donc je pense que j'ai un problème sur ma sélection directement, mais sans l'intellisense et sans net, j'avoue avoir du mal à faire quelque chose de correct. J'essaye ta version de sélection du signet sans succès ... Je sais plus trop ce que je peux modifier il n'y a que deux lignes O.o
    Expert en recherche google caféinomane

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Comment déclares-tu tes objets dans ton projet ?
    Le code que je poste est un copier coller de mon VBE.
    Je suis certain qu'il fonctionne.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  5. #5
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut
    Je ne comprend pas la question ^^'. Dans la partie qui coince, il n'y a pas vraiment d'objet, je vais chercher un bookmark dont je suis sûr du nom (orthographe), je le sélectionne et j'applique ensuite une modification de la sélection. Le seul objet ici serait le document ? je travail depuis une macro excel donc j'ai du récupéré un document qui me sert de modèle.

    Voici une copie de cette partie qui coince, sans rien omettre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ...
    Set doc = WordApp.Documents.open("monfichier.doc")
    ...
    doc.Bookmarks("graph").range.select
    Selection.Collapse direction:=wdCollapseStart
    Expert en recherche google caféinomane

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Par objet, on entend l'application Word, Early ou LateBinding; le document qui est aussi un objet.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  7. #7
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut
    Je comprends mieux ^^ Je ne connaissais pas les termes définissant cette notion de binding.
    Cette fois ci, j'ai étais sage et j'ai d'abord déclarer correctement ma variable doc :
    Si c'est ce qu'il fallait faire du moins ...
    La suite je l'ai déjà partagé à mon post précédent.
    Expert en recherche google caféinomane

  8. #8
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Et l'application ?

    Le code que j'ai donné fonctionne chez moi, ce n'est donc pas une question d'écriture, mais je pense à une question de bibliothèque.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  9. #9
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut
    D'accord, voilà :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim WordApp As New Word.Application
    Dim doc AS Word.Document
    Set WordApp = Create Object("Word.Application")
    La référence Microsoft Office 14.0 Object Library est bien coché, si c'est ce que tu pourrais voir comme problème de bibliothèque. Ou alors un conflit entre le select de excel est celui de word ? Ca marcherait si je faisais doc.selection au lieu de selection ?
    Expert en recherche google caféinomane

  10. #10
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut
    Bon c'était effectivement ça (ou presque) :
    Voilà voilà ... faites gaf quand vous utilisez plusieurs outils de microsoft office en même temps @.@

    Merci beaucoup !
    Expert en recherche google caféinomane

  11. #11
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Ca ne pose pas de problème d'utiliser plusieurs bibliothèques en même temps.
    Le tout est de le faire correctement.
    Pour ne pas faire d'erreur dans l'écriture du code, il est plus simple de travailler en EarlyBinding.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  12. #12
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut
    Le EarlyBinding était fait, dans ce cas là, j'ai juste oublié à quel point les deux librairies, pour excel et pour word, sont proche, au point de proposer des éléments identique. Désormais je préciserais toujours l'application d'où provient l'objet ^^
    Ce n'est pas que ça pose problème d'utiliser plusieurs bibliothèque, mais ça demande une gymnastique différente que je n'ai pas eu d'instinct. Vb.net est bien pour ça, il nous impose de préciser la bibliothèque source quand on contrôle des applications.

    Merci beaucoup en tout cas, j'ai réussi à finaliser une macro qui, outre ce soucis, commençait à prendre pas mal de temps.
    Expert en recherche google caféinomane

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Placer le curseur sur un input
    Par griese dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 21/07/2006, 15h10
  2. [JTextField] Placer le curseur
    Par nicotine002 dans le forum Composants
    Réponses: 2
    Dernier message: 02/05/2006, 15h41
  3. Renommer un fichier juste avant son téléchargement
    Par laulaurent dans le forum Langage
    Réponses: 2
    Dernier message: 06/01/2006, 14h55
  4. [VB6]Surligner et placer le curseur dans un textbox.
    Par méphistopheles dans le forum VB 6 et antérieur
    Réponses: 17
    Dernier message: 29/10/2005, 10h41
  5. [JTextField] placer le curseur sur un JTextField
    Par sixkiller dans le forum Composants
    Réponses: 2
    Dernier message: 30/11/2004, 21h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo