Erreur Qualificateur incorect lors de l'utilisation de la fonction Contains

Bonjour,

Je rencontre un problème lors de l'utilisation de la fonction Contains en VBA.

Private Sub export_selection()

Dim totclient As Integer
Dim contact As Integer
Dim adrfound As String
Dim adrfound2 As String

totclient = wbdata.Sheets(1).UsedRange.Rows.Count
contact = 2

'For client = 2 To totclient
For client = 2 To 3

    wbclient.Sheets(1).Cells(client, 1).Value = wbdata.Sheets(1).Cells(client, 1).Value 'Code client
    wbclient.Sheets(1).Cells(client, 3).Value = wbdata.Sheets(1).Cells(client, 2).Value 'Raison sociale
    wbclient.Sheets(1).Cells(client, 4).Value = "Particulier" 'Type de client

    'adresse
    If wbdata.Sheets(1).Cells(client, 4).Value <> "" Then
        adrfound = wbdata.Sheets(1).Cells(client, 4).Value
        'adresse
        wbclient.Sheets(1).Cells(client, 15).Value = Left(adrfound, Len(adrfound) - Application.Evaluate("MATCH(TRUE,ISNUMBER(--MID(""" & adrfound & """,LEN(""" & adrfound & """)-ROW($1:$255),1)),0)") - 5)
        'Code postal
        wbclient.Sheets(1).Cells(client, 17).Value = Mid(adrfound, Len(adrfound) - Application.Evaluate("MATCH(TRUE,ISNUMBER(--MID(""" & adrfound & """,LEN(""" & adrfound & """)-ROW($1:$255),1)),0)") - 4, 5)
        'Ville
        wbclient.Sheets(1).Cells(client, 18).Value = Mid(adrfound, Len(adrfound) - Application.Evaluate("MATCH(TRUE,ISNUMBER(--MID(""" & adrfound & """,LEN(""" & adrfound & """)-ROW($1:$255),1)),0)") + 2, 99)

        'Vérif si ville contient France
        adrfound2 = UCase(wbclient.Sheets(1).Cells(client, 18))
        MsgBox (adrfound2)
        If adrfound2.Contains(" France") Then
            wbclient.Sheets(1).Cells(client, 18).Value = Replace(adrfound2, " FRANCE", "")
            wbclient.Sheets(1).Cells(client, 20).Value = "FR"
        End If

        Else
        'Code postal
        wbclient.Sheets(1).Cells(client, 17).Value = "NC"
        'Ville
        wbclient.Sheets(1).Cells(client, 18).Value = "NC"
        'Code ISO2
        wbclient.Sheets(1).Cells(client, 20).Value = "FR"
    End If

    'Controle création de contact
    If wbdata.Sheets(1).Cells(client, 5).Value <> "" Then
        wbcontact.Sheets(1).Cells(contact, 2).Value = wbdata.Sheets(1).Cells(client, 1).Value 'code client
        wbcontact.Sheets(1).Cells(contact, 4).Value = wbdata.Sheets(1).Cells(client, 2).Value 'Nom du contact
        wbcontact.Sheets(1).Cells(contact, 6).Value = wbdata.Sheets(1).Cells(client, 5).Value 'E-mail
        wbcontact.Sheets(1).Cells(contact, 8).Value = "Sans consentement" 'Consentement
        contact = contact + 1
    End If

Next

End Sub

Mon problème se situe au niveau de la variable adrfound2 que j'utilise dans le if pour vérifier la présence du mot FRANCE.

Dès que je lance ma macro j'obtiens une erreur m'indiquant "Qualificateur incorect" et me surlignant le adrfound2 présent dans la ligne

If adrfound2.Contains(" France") Then

Je ne parviens pas à comprendre pourquoi j'ai une erreur sachant que ma variable a été déclarée en tant que string et lorsque je met mon if en commentaire j'ai bien le msgbox présent juste avant qui se déclenche correctement.

Une idée ?

Bonjour, Pourquoi l'utilisation de Ucase qui met en majuscul le contenu si vous recherchez ensuite France en minuscule ?

adrfound2 = wbclient.Sheets(1).Cells(client, 18)
If adrfound2 Like "*France*" Then

La donnée est issue d'un formulaire. Je me sers donc du Ucase pour éviter d'avoir à gérer tous les cas possibles lié à la casse.

En tout cas j'ai fait une variante de ton code

If UCase(adrfound2) Like "*FRANCE*" Then 

Et la ca passe. Merci beaucoup.

Ok donc dans l'autre sens en majuscule.

oui si c'était pas minuscule c'était majuscule fallait choisir le bon.

Rechercher des sujets similaires à "erreur qualificateur incorect lors utilisation fonction contains"