Test si une valeur est présente dans colone

Bonjour ,

je souhaite via vba savoir si ma colonne A contient "ComputerName" de l'utilisateur.

ComputerName me donne une valeur alphanumérique dans mon cas

Ma colonne A se situe dans un autre fichier, base de données, mais la technique est la même je pense.

car si ma colonne A "BDD" contient la valeur "computerName" utilisateur en direct, alors je mets fin à ma macro.

Espérant avoir été clair.

Merci

139meteo-d-equipe.xlsm (53.29 Ko)

Bonjour,

Avec COntIf :

MsgBox Application.CountIf(Range("A:A"), "ComputerName")

Bonjour,

merci de ta réponse, mais j'ai beau tenté de l'insérer dans ma macro mais sans réussite :

[code]Sub Macro7()

'

' Macro7 Macro

'

Application.ScreenUpdating = False

Selection.Copy

Workbooks.Open Filename:= _

"C:\Users\SEBASTIEN\Documents\MACRO EXCEL\Macro copie sur autre fichier excel\Base de données.xlsm"

If Application.CountIf(Range("A:A"), "ComputerName") Then

MsgBox ("vous avez deja voteeeee")

Exit Sub

End If

'MsgBox Application.CountIf(Range("A:A"), "ComputerName")

Je souhaiterai que si la valeur est contenu dans la conne A1, alors msgbox (vous avez déjà voté), puis sortie de macro sinon ma macro continue.

désolé, si mes explications sont peu parlantes.

bonjour

c'est pour la primaire qui vient ? ou pour les corses

cordialement

Re,

 Sub Test()

    'Selection.Copy
    'Workbooks.Open Filename:= _
    '"C:\Users\SEBASTIEN\Documents\MACRO EXCEL\Macro copie sur autre fichier excel\Base de données.xlsm"

    If Application.CountIf(Range("A:A"), "ComputerName") > 0 Then

        MsgBox ("vous avez deja voteeeee")
        Exit Sub

    End If

End Sub

Bonjour

J'ai essayé, mais il semble qu'il ne trouve pas la valeur, alors qu'elle est présente à 5 reprises à la suite en colonne A.

je désespère, mais je n'abandonne pas.....

Sub auto_Open()

   Workbooks.Open Filename:= _
   "C:\Users\SEBASTIEN\Documents\MACRO EXCEL\Macro copie sur autre fichier excel\Base de données.xlsm"

    If Application.CountIf(Columns("A:A"), "ComputerName") > 0 Then
        ActiveWorkbook.Close

        MsgBox ("vous avez deja voteeeee")
        Exit Sub

    End If

End Sub

Attention, il suffit qu'il y ai un espace parasite et dans ce cas, il n'y aura pas correspondance exacte. Si le texte (ComputerName) est dans une phrase, ça ne marche pas non plus, dans ce cas, il te faut utiliser l'astérisque (*) devant et derrière le mot :

If Application.CountIf(Columns("A:A"), "*ComputerName*") > 0 Then

Petite précision, ce n'est le texte "computerName" que je recherche, mais sa valeur,

c'est pour moi ex : DESKTOP-DP8ARSA

pour l'instant, à l'ouverture, il ouvre l'autre fichier "Base de données" et reste figé en sélectionnant toute la ligne 2.

Je continue mes recherches .....

Merci

De cette façon alors ?

If Application.CountIf(Columns("A:A"), "*" & ComputerName & "*") > 0 Then

Les deux fichiers pour tester la macro

190base-de-donnees.xlsm (10.56 Ko)
184meteo-d-equipe.xlsm (83.58 Ko)

Bonsoir, vu l'heure

suite à vos messages et propositions, je pense avoir trouver enfin la bonne composition :

   Columns("A:A").Select

    If Application.CountIf(Range("A:A"), Environ("computerName")) > 0 Then
        ActiveWorkbook.Close

        MsgBox ("Vous avez déjà voté et transmis vos réponses, merci.")
        Exit Sub

elle fonctionne bien, ne reste qu'ajuster.

Merci

Rechercher des sujets similaires à "test valeur presente colone"