Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Utilisation de la classe cWord : Selection>>Characters>>Count

1 réponse
Avatar
Juliane
Bonjour,

Quelqu'un sait-il comment récupérer le nombre de caractères sélectionnés
dans un document Word ?

Dans la classe CWord livrée avec Windev, j'ai créé une méthode pour compter
le nombre de caractères d'une sélection dans un document (préalablement
réalisée en automatique avec des recherches) :

nbCar est un entier = :m_xWord>>Selection>>Characters>>Count

Cette commande fonctionne bien SAUF lorsqu'aucun caractère n'est sélectionné
: j'ai toujours 1 comme résultat, qu'il y en ait 1 ou 0 !

Je pense que cela doit venir du fonctionnement de Visual Basic qui considère
le curseur (point d'insertion) comme un caractère, mais ne ne sais pas
comment m'en sortir car je ne connais pas VB.

Je n'ai pas trouvé non plus comment indiquer "Si Selection est vide" avant
de lancer un "Couper" ou "Coller" qui déclenche alors une erreur.

Merci aux âmes charitables...

1 réponse

Avatar
Christophe Charron
Méro a écrit :
J'avais eu ce genre de souci avec excel pour la récupération de données,
je devais également tester le type de la donnée avant de la récupérer
car si elle est vide ça bugue ! Augusta per augusta.

"Juliane" <mailto: a écrit dans
le message de news: dn18j0$rjj$
<mailto:dn18j0$rjj$...
J'ai trouvé la solution.

Pour ceux que cela intéresserait, il faut tester le "Type" de
sélection en cours avec la constante VB de "point d'insertion" :

nbCar = :m_xWord>>Selection>>Characters>>Count
SI :m_xWord>>Selection>>Type = 1 ALORS
nbCar --
FIN

et cela permet de récupérer : nbCar = 0.

Merci quand même à ceux qui auraient pu chercher.

// Constantes VB pour "WdSelection.Type"
//WdNoSelection = 0
//WdSelectionIP = 1
//wdSelectionNormal = 2
//wdSelectionFrame = 3
//wdSelectionColumn = 4
//wdSelectionRow = 5
//wdSelectionBlock = 6
//wdSelectionInlineShape = 7
//wdSelectionShape = 8
**


"Juliane" <mailto: a écrit dans
le message de news:dmvrr9$dms$
> Bonjour,
>
> Quelqu'un sait-il comment récupérer le nombre de caractères
sélectionnés
> dans un document Word ?
>
> Dans la classe CWord livrée avec Windev, j'ai créé une méthode
pour compter
> le nombre de caractères d'une sélection dans un document
(préalablement
> réalisée en automatique avec des recherches) :
>
> nbCar est un entier = :m_xWord>>Selection>>Characters>>Count
>
> Cette commande fonctionne bien SAUF lorsqu'aucun caractère n'est
sélectionné
> : j'ai toujours 1 comme résultat, qu'il y en ait 1 ou 0 !
>
> Je pense que cela doit venir du fonctionnement de Visual Basic
qui considère
> le curseur (point d'insertion) comme un caractère, mais ne ne
sais pas
> comment m'en sortir car je ne connais pas VB.
>
> Je n'ai pas trouvé non plus comment indiquer "Si Selection est
vide" avant
> de lancer un "Couper" ou "Coller" qui déclenche alors une erreur.
>
> Merci aux âmes charitables...
>
>
>
>
>



Je ne vais pas chipoter mais c'est "Ad augusta per angusta"

--
Cordialement
Christophe Charron

PROLOGIQ
7 bis Rue des Aulnes
69410 Champagne au Mont d'Or

Tel : 0 437 499 107
Fax : 0 437 499 105
mailto: