Code pour commence par

AKSooL

XLDnaute Occasionnel
Bonjour tout le monde et bonne année a tous :)

Mon ancien code etait celui la :
If Not Intersect(Target, Range("D4:D7000")) Is Nothing Then _
If Target.Value <> "" Then If InStr(Target.Value, "DI") = 0 _
Then Target.Value = "DI " & Target.Value

En fait qd j ecrivais 09-1010 dans la cellule , il me mettait DI 09-1010

maintenant ce que je voudrais faire mais je tourne en rond et qd la cellule dans laquelle j ecris commence par 11 , il me mette SI ......

Ex: qd j ecris dans la cellule 09-1010 , dans la cellule apparait DI 09-1010
qd j ecris dans la cellule 11-1010 , dans la cellule apparait SI 11-1010

Voila , si qqun peut m aider

Merci
 

Banzai64

XLDnaute Accro
Re : Code pour commence par

Bonjour
Bonjour James007
A voir et à tester

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Target, Range("D4:D7000")) Is Nothing Then
    If Target.Value <> "" Then
      If InStr(Target.Value, "DI") = 0 And InStr(Target.Value, "SI") = 0 Then
        If Left(Target.Text, 2) = "11" Then
          Target.Value = "SI " & Target.Value
        Else
          Target.Value = "DI " & Target.Value
        End If
      End If
    End If
  End If
End Sub

Bonne journée
 

Efgé

XLDnaute Barbatruc
Re : Code pour commence par

Bonjour AKSooL, James007,
Une proposition après consultation des rûnes magiques par le chaman du vilage...
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
If Intersect(Target, Range("D4:D7000")) Is Nothing Or Target.Value = "" Then Exit Sub
Application.EnableEvents = False
Select Case Left(Target.Value, 2)
Case "11"
Target.Value = "SI " & Target.Value
Case Else
Target.Value = "DI " & Target.Value
End Select
Application.EnableEvents = True
End If
End Sub
Cordialement

EDIT Bonjour Banzai, je vois que tes rûnes disent la même chose : ) )
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 182
dernier inscrit
moutassim.amine