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 :

Récupérer les caractères d'une équation (objet Omaths)


Sujet :

VBA Word

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Dmaths
    Inscrit en
    Février 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Dmaths
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2006
    Messages : 19
    Par défaut Récupérer les caractères d'une équation (objet Omaths)
    Bonjour,

    Je pars d'un vecteur AB écrit.

    Je positionne le curseur au début de l'équation.

    J'applique le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend
    MsgBox Selection.Text
    Selection.Collapse (wdCollapseEnd)
     
    Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend
    MsgBox Selection.Text
    J'obtiens en retour ?? mais pas A et B.

    Avez-vous une idée ?
    Merci d'avance.
    Cordialement.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par ddorange Voir le message
    J'obtiens en retour ?? mais pas A et B.
    Re,

    A tout hasard, cela donne quoi avec Count:=2 ?

    Après essai, ma proposition n'est pas valable.
    Dernière modification par Invité ; 02/02/2017 à 17h15. Motif: Ma solution n'est pas valable. Désolé !

  3. #3
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 683
    Par défaut
    Salut,

    dans ce sujet en anglais, il est question de parcourir les caracteres
    http://software-solutions-online.com...-the-equation/
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel (3e édition)
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par ddorange Voir le message
    J'ai simulé deux équations dont une avec un argument rempli et j'ai regardé ce que donnait ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Sub ContenuChampOMath()
     
    Dim I As Integer
    Dim LeContenusDeMesEquations As String
     
        With ActiveDocument
             LeContenusDeMesEquations = ""
             For I = 1 To .OMaths.Count
                 LeContenusDeMesEquations = LeContenusDeMesEquations & "Equation " & I & " : " & .OMaths(I).Range.Text & Chr(10)
             Next I
             MsgBox LeContenusDeMesEquations
      End With
     
    End Sub
    J'ai obtenu ce résultat :

    Pièce jointe 240859

    Conclusion : J'en déduis que les ?? correspondent à un argument vide.

    Pour Jean-Philippe : Je n'ai pas réussi à exploiter la fonction de ton lien, mais j'avoue que je ne connais pas ce domaine.

  5. #5
    Membre averti
    Homme Profil pro
    Dmaths
    Inscrit en
    Février 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Dmaths
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2006
    Messages : 19
    Par défaut
    Bonjour,
    J'ai trouvé une bonne piste grâce à l'enregistreur de macros.
    Un vecteur AB est écrit, le curseur est placé juste avant.
    Le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub RecupereCaractereEquations
        Selection.MoveRight Unit:=wdCharacter, Count:=2
        Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend
        MsgBox Selection.Text
        Selection.MoveRight Unit:=wdCharacter, Count:=1
        Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend
        MsgBox Selection.Text
        Selection.MoveRight Unit:=wdCharacter, Count:=1
    End Sub
    permet d'obtenir A et B.

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

Discussions similaires

  1. Récupérer les nombres d'une chaine de caractères ?
    Par supman33 dans le forum Débuter
    Réponses: 5
    Dernier message: 21/06/2012, 16h55
  2. Réponses: 1
    Dernier message: 12/11/2009, 00h16
  3. Réponses: 0
    Dernier message: 09/10/2008, 08h02
  4. [SQL] PHP objet récupérer les résultats d'une requête
    Par kstou2001 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 08/01/2008, 23h34
  5. Réponses: 12
    Dernier message: 04/09/2006, 17h59

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