Erreur de compilation

bonjour ,

j'ai essayé ce code qui me permet de faire une recherche sur une plage de données

j'ai eu un probléme de compilation à ce niveau la:

  If (InStr(Cell.Value), "*") > 0 And (Instr(Cell.Value), "**") > 0 then
Dim Feuille As Worksheet, Cell As Range, Plage As Range
    Dim Var1

    Set Feuille = Worksheets("SBR")
    With Feuille

        Set Plage = .Range("X3:AG3")
        For Each Cell In Plage

            If (InStr(Cell.Value), "*") > 0 And (Instr(Cell.Value), "**") > 0 then

            Significant_Recent_EN = "<br/>" & Sheets(1).Range("B45").Text & "<br/>" & Sheets(1).Range("B46").Text & "<br/>"

            Significant_Recent_FR = "<br/>" & Sheets(1).Range("E45").Text & "<br/>" & Sheets(1).Range("E46").Text & "<br/>"

        Next
    End With
    Set Feuille = Nothing
    Set Plage = Nothing

    

bonsoir,

essaie ceci

  If  InStr(Cell.Value, "*") > 0 And Instr(Cell.Value, "**") > 0 then

y't il une façon de regler ça ; le code fonctionne super bien seulement quand il s'agit d' une définition de (**) il m'affiche aussi la défintion d'une seule (*), alors qu'il devrait m'afficher seulement la défintion de (**) ;

voici mon code

 If Sheets(2).Cells(i, 23 + Exp).Value = "DNM" Then
                                If InStr(Sheets(2).Cells(3, 23 + Exp), "*") > 0 And Not Flag_1etoile Then
                                    Flag_1etoile = True
                                    Significant_EN = "<br/>" & Sheets(1).Range("B45").Text & "<br/>"
                                    significant_FR = "<br/>" & Sheets(1).Range("E45").Text & "<br/>"
                                End If
                                If InStr(Sheets(2).Cells(3, 23 + Exp), "**") > 0 And Not Flag_2etoiles Then
                                    Flag_2etoiles = True
                                    Recent_EN = "<br/>" & Sheets(1).Range("B46").Text & "<br/>"
                                    Recent_FR = "<br/>" & Sheets(1).Range("E46").Text & "<br/>"
                                End If

bonsoir,

une proposition à tester

 If Sheets(2).Cells(i, 23 + Exp).Value = "DNM" Then
                                If InStr(Sheets(2).Cells(3, 23 + Exp), "**") > 0  Then
                                    Flag_2etoiles = True
                                    Recent_EN = "<br/>" & Sheets(1).Range("B46").Text & "<br/>"
                                    Recent_FR = "<br/>" & Sheets(1).Range("E46").Text & "<br/>"
                                elseIf InStr(Sheets(2).Cells(3, 23 + Exp), "*") > 0  Then
                                    Flag_1etoile = True
                                    Significant_EN = "<br/>" & Sheets(1).Range("B45").Text & "<br/>"
                                    significant_FR = "<br/>" & Sheets(1).Range("E45").Text & "<br/>"
                                End If

Merci pour votre initiative , ça fonctionnme parfaitement est que vous pourriez m'expliquer c'etait quoi le probléme exatcement ?

aussi maintenant ça fonctionne avec les deux cas (*) et (**) mais j 'ai un autre cas avec les *** en même temps [Significant** and recent* experience in providing strategic advice, both in writing and orally, to senior management (Director General, DG equivalent or higher) in relation to IM/IT services and solutions.] il m'affiche seulemt la defintion des (**)

Bonsoir,

le problème

l'instruction instr(x,"**") recherche la présence de 2 étoiles consécutives

l'instruction instr(x,"*") recherche la présence d'une étoile ce qui sera toujours vrai si la première recherche donne un résultat. quand il y a 2 étoiles, il y en a aussi une.

voici une adaptation du code qui permet de gérer la détection d'une étoile et de 2 étoiles.

 If Sheets(2).Cells(i, 23 + Exp).Value = "DNM" Then
                                If InStr(Sheets(2).Cells(3, 23 + Exp), "**") > 0  Then
                                    Flag_2etoiles = True
                                    Recent_EN = "<br/>" & Sheets(1).Range("B46").Text & "<br/>"
                                    Recent_FR = "<br/>" & Sheets(1).Range("E46").Text & "<br/>"
                                endif
                                if InStr(replace(Sheets(2).Cells(3, 23 + Exp), "**","##"),"*"") > 0  Then
                                    Flag_1etoile = True
                                    Significant_EN = "<br/>" & Sheets(1).Range("B45").Text & "<br/>"
                                    significant_FR = "<br/>" & Sheets(1).Range("E45").Text & "<br/>"
                                End If

Merci beaucoup pour votre temps j'ai une erreur de syntaxe a ce niveau

  If InStr(replace(Sheets(2).Cells(3, 23 + Exp), "**", "##"),"*"") > 0  Then

une faute de frappe

 If Sheets(2).Cells(i, 23 + Exp).Value = "DNM" Then
                                If InStr(Sheets(2).Cells(3, 23 + Exp), "**") > 0  Then
                                    Flag_2etoiles = True
                                    Recent_EN = "<br/>" & Sheets(1).Range("B46").Text & "<br/>"
                                    Recent_FR = "<br/>" & Sheets(1).Range("E46").Text & "<br/>"
                                endif
                                if InStr(replace(Sheets(2).Cells(3, 23 + Exp), "**","##"),"*") > 0  Then
                                    Flag_1etoile = True
                                    Significant_EN = "<br/>" & Sheets(1).Range("B45").Text & "<br/>"
                                    significant_FR = "<br/>" & Sheets(1).Range("E45").Text & "<br/>"
                                End If

Merci Beaucoup h2so4

Bonne soiree

Rechercher des sujets similaires à "erreur compilation"