Modification d'une ligne de code avec "commence par"

Bonjour,

Je ne sais pas comment dire en VBA : "Commence par "DEA"". Exemple ci-dessous :

                If Cel.Offset(-1, -9) < Reference + 14 Or Cel.Offset(0, -5) = "CPT" Then
                    Cel = 0

J'aimerais que Cel.Offset(0, -5) = "CPT" soit remplacer par "commence par CPT"

Bonjour,

Essaye comme ça :

If Cel.Offset(-1, -9) < Reference + 14 Or Cel.Offset(0, -5) = "CPT*" Then Cel = 0

Bonjour,

J'avais déjà essayé, ça ne fonctionne pas : /

Bonjour,

A tester

Cdlt

If Cel.Offset(-1, -9) < Reference + 14 Or mid(Cel.Offset(0, -5),3) = "CPT" Then Cel = 0

Re, Salut Jean-Eric,

Merci de nous joindre ton fichier avec ce code.

ça ne marche pas non plus Jean-Eric. Le fichier est ci-joint.

Avec "Left" ça devrait marcher non ? Mais je ne sais pas où le placer.

8exemple.xlsm (69.78 Ko)

Bonjour à toutes et à tous

.value like "CPT" & "*"

Bonjour à tous,

Le test semble correct avec

Left(Cel.Offset(0, -12), 3) = "CPT"

mais après avoir modifié

For Each Cel In .Range("X4:X" & .Range("J" & Rows.Count).End(xlUp).Row)
10exemple.xlsm (22.83 Ko)

A+

Bonjour,

Ma petite contribution.

Cdlt

Option Explicit
Sub Detection0()
Dim sH_1 As Worksheet, sH_2 As Worksheet
Dim D1 As Date, D2 As Date
Dim Plage As Range
Dim derLigne As Long
Dim Cel As Range

    Application.ScreenUpdating = False
    Set sH_1 = Worksheets("lancement")
    Set sH_2 = Worksheets("suivi")
    D1 = sH_1.Cells(1, 13)
    D2 = sH_1.Cells(2, 13)

    With sH_2
        derLigne = .Range("G" & Rows.Count).End(xlUp).Row
        Set Plage = Range(.Cells(2, 7), .Cells(derLigne, 7))
        For Each Cel In Plage
            If Not IsEmpty(Cel) And IsDate(Cel.Offset(0, 1)) Then
                If Cel.Offset(0, 3) > D1 Or Cel.Offset(-1, 1) < (D1 + 14) _
                    Or Left(Cel.Offset(0, 5), 3) = "CPT" Or Cel.Offset(0, 3) < D2 Then
                    Cel.Offset(0, 17) = 0
                Else
                    Cel.Offset(0, 17) = 1
                End If
            End If
        Next Cel
    End With

    Set sH_1 = Nothing: Set sH_2 = Nothing: Set Plage = Nothing
End Sub

Pardon pour le retard, petit problème.

ça fonctionne parfaitement, merci bcp

Rechercher des sujets similaires à "modification ligne code commence"