Microsoft 365 tester si valeur dans le presse-papier ou ClipBoard est numérique ou non

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous,

je bloque sur mon besoin malgré mes recherches et tentatives.

Ce que je fais :
1 - copier d'une valeur,
2 - j'ai besoin de tester si cette valeur est numérique ou non pendant qu'elle est dans le presse-papier ou ClipBoard
ou quand elle est collé dans la recherche find car je ne la colle pas dans une cellule.

par exemple pour dire : Is Not Numeric() Then Exit Sub
je ne suis pas certain que cela soit possible mais si solution il y a, ça m'arrangerait bien LOl :)

Un grand merci , comme d'habitude, à toutes et à tous pour votre aide toujours si précieuse.
S'il est nécessaire de faire une fichier test, dites-moi :)
Je vous souhaite une super WE,
Amicalement,
lionel,
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
re
Bonjour a tous

Code:
'***********************************************************************
'acces au clipboard par le parentwindow d'un document html virtuel
'patricktoulon sur DVP
'date:17/03/2014
'***********************************************************************

'====================
    Public Property Get GetDataOnClip()
     GetDataOnClip = CreateObject("htmlfile").ParentWindow.ClipboardData.GetData("Text")
   End Property
'=====================
    Public Property Let SaveDataOnClip(Value)
     CreateObject("htmlfile").ParentWindow.ClipboardData.SetData "Text", Value
     End Property
'======================
    Public Sub ClearDataOnClip()
     CreateObject("htmlfile").ParentWindow.ClipboardData.ClearData ("text")
    End Sub
'======================


Sub test()
SaveDataOnClip = "salut Arthour" ' inscrit dans le clipboard

MsgBox GetDataOnClip 'lecture du clipboard

Cells(1, 1).Select: ActiveSheet.Paste 'teste de collage

ClearDataOnClip ' vidage du clipboard
End Sub
 

job75

XLDnaute Barbatruc
Bonjour le forum,

Cette solution est bien meilleure que celle du post #28, il n'y aura jamais de surprise :
VB:
Sub Test()
[A1] = 123
[A1].Copy
My_Clipboard
Application.CutCopyMode = 0
End Sub

Sub My_Clipboard()
Dim v As Variant
Application.ScreenUpdating = False
With Workbooks.Add.Sheets(1) 'nouveau document
    On Error Resume Next
    .Paste
    v = .[A1]
    .Parent.Close False
End With
If IsNumeric(CStr(v)) Then Application.ScreenUpdating = True: MsgBox "Valeur numérique : " & v, , "Clipboard"
End Sub
Salut patricktoulon, OK mais comme les API c'est pas trop lumineux.

Bonne journée.
 

patricktoulon

XLDnaute Barbatruc
re

{ object invariable } { parentobject.object enfant invariable } {fonction } {arguments}
CreateObject("htmlfile") | .ParentWindow.ClipboardData | .ClearData | ("text") 'écriture
CreateObject("htmlfile") | .ParentWindow.ClipboardData | .SetData | "Text", Value 'écriture
CreateObject("htmlfile") | .ParentWindow.ClipboardData | .GetData | ("Text") 'lecture
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour Gérard, JM, Mapomme, Dranreb, Patrick (en espérant oublier personne), le forum,

L'amie qui vient d'avoir une cancer a été opérée et vient également de subir, un mois après, une seconde opération de l'appendicite "éclatée" avec péritonite et infection généralisée. Inutile d'expliquer dans quel état elle est et quelles sont ses souffrances. Déjà un miracle qu'elle soit toujours de ce monde. Cette personne m'est très proche, je la considère comme de ma famille et je suis souvent auprès d'elle pour tenter de la soutenir et de lui donner la force de se battre. D'où mes absences auxquelles s'ajoute le fait que je suis débordé de boulot à cause de cette situation.

Toutefois, je vous prie de m'excuser d'avoir abandonné le fil.

Pour en revenir à ma demande, j'ai pris un peu de temps pour tester les API proposés par JM (merci à toi).
A l'exécution, il y a une "incompatibilité de type"
Mais cela ne pourrait aller car je ne souhaite pas passer par une écriture dans une cellule.

L'avancement actuel

Le code de Mapomme permet et c'est génial de rechercher les N° de téléphone dans tout le classeur en commençant par la feuille active.
Le code de Youky, modifié à l'aide du code de Mapomme, permet et c'est aussi génial de rechercher les textes dans tout le classeur en commençant par la feuille active.

Ces 2 codes permettent et c'est ça super génial, pour tester si numérique ou non, de ne pas avoir à copier dans une cellule mais de pouvoir saisir ou coller directement dans le masque de la recherche les textes ou N° recherchés et le teste si numérique ou non, se fait automatiquement sur la valeur collée dans le masque de recherche.

L'amélioration que j'aurais souhaité mais ça marche déjà super bien avec les codes de Mapomme et Youky :
Malgré mes recherches et tentatives, je n'ai pas réussi à faire cohabiter les 2 codes recherches dans le même code :
il faut donc 2 codes séparés donc 2 boutons sur les feuilles.

Ce n'est pas bien grave mais je voulais vous demander s'il n'était pas possible de réaliser un seul code regroupant les 2 types de recherches (N° ou Texte).

Je joins le fichier la où j'en suis avec également vos codes.
Un grand merci à vous tous vraiment et si pas solution, je le redis, ça fonctionne déjà très bien en 2 codes séparés.

Je vous adresse une nouvelle fois mes excuses pour mon absence et je vous remercie par avance de me pardonner à nouveau si je m'absente encore.
Amicalement,
lionel,
 

Pièces jointes

  • Recherche_ts_onglets.xlsm
    110.6 KB · Affichages: 5
Dernière édition:

Discussions similaires