Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Saisie sécurisée numéros de téléphone et ajout fonction clic droit de la souris

Helios77

XLDnaute Nouveau
Bonjour à Tous,
Et dire que durant ma vie active j'ai fait pas mal de développements VBA sous excel... mais depuis que je suis à la retraite, je n'ai plus eu l'occasion jusqu'à maintenant de manipuler cet outil... Résultat.. je suis rouillé et j'ai besoin d'aide pour les 2 points suivants :
1 - j'ai une colonne "numéros de téléphone" dans un tableau, dont j'ai imposé le format d'affichage spécial "numéro de téléphone". Jusque là tout va bien.. Mais je n'arrive pas à imposer un format de saisie (10 chiffres) pour être certain de ne pas faire d'erreur lors de la saisie... Je connais bien la fonction "validation des données", mais incapable de trouver la bonne formule qui garantit ce format.
2 - je souhaite pouvoir lancer directement l'appel du numéro de téléphone contenu dans une cellules (d'où mon besoin d'être certain qu'elle est au bon format), en ajoutant la fonction "appeler" au menu contextuel du clic droit de la souris.
J'ai bien trouvé la manière de la faire en ajoutant une colonne à côté =SI(ESTVIDE([@[Tél Portable]]);"";LIEN_HYPERTEXTE("tel:+33"&F28;"☎")) mais mon tableau comporte déjà beaucoup de colonnes et j'aimerais donc le simplifier en intégrant cette possibilité directement avec le clic droit de la souris.
Je vous remercie d'avance de votre aide.
Amicalement
Helios
 

eriiic

XLDnaute Barbatruc
Bonjour à tous,
tu pourrais modifier le test qu'il détecte un format spécial téléphone
VB:
ActiveCell.Text Like "## ## ## ## ##"
et ne pas à avoir à déclarer les plages de n° dans le code.
Et même le rendre actif sur toutes les feuilles si besoin
eric
 

Helios77

XLDnaute Nouveau
C'est parfait Eriic... Le pire c'est que j'avais justement imaginé cette solution (tester le format de la cellule) et je me suis focalisé sur la solution de Patrick.
Encore merci pour toute votre aide.
Tout fonctionne cette fois.
Amicalement
Helios
 

patricktoulon

XLDnaute Barbatruc
re je t'ai montré comment faire dans l'exemple 3
UNION!!! ou par les nom de colonnes concaténée avec les crochets

méthode concat
VB:
If Not Intersect(Range("Tableau1[Tél Portable]:[Tél Fixe]"), ActiveCell) Is Nothing Then '
méthode union
Code:
If Not Intersect(Union(Range("Tableau1[Tél Portable]"), Range("Tableau1[Tél Fixe]")), ActiveCell) Is Nothing Then
 

patricktoulon

XLDnaute Barbatruc
Bonjour @eriiic
et comment tu fait si tu ne veux pas sur une colonne ou il y a les N°Tel?
ce test là ne devrait être qu'une sécurité de plus a fin d’éviter de lancer un appel avec un num bidon
imaginons seulement une colonne Fax
ben tu es chocolat
d'autant plus que l'on est sensés avoir des (colonnes formatées et contrainte )par la validation
il ne peut donc y avoir d'erreur
non remet les colonnes
 
Dernière édition:

eriiic

XLDnaute Barbatruc
Proposé dans la mesure où il le veut accessible sur tout les n° saisis sans s'embêter à modifier le code bien évidemment.
Pourquoi cette remarque puisque ça a l'air de l'intéresser ? Les conditions d'utilisation sont claires non ? Partout où il y a ## ## ## ## ##. Celui qui veut autre chose, il fait autre chose
 

Helios77

XLDnaute Nouveau
Ne vous énervez pas les gars.. Tout fonctionne grâce à vous et je vous en remercie.
Ceci dit, je partage l'avis d'Eriicc, puisque justement j'ai pris la précaution d'imposer un format précis (numérique à 10 chiffres) lors de la saisie des "numéros de téléphone", alors je peux appliquer ta superbe macro patrick, non pas sur les colonnes, mais bien en testant le format de la cellule.
Pour moi c'est plus simple et très simple à mettre en oeuvre.
Encore merci à vous.
Maintenant, j'ai le souci de l'extraction du PDF qui me pose bien des soucis..
Amicalement
Helios
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…