If sur une cellule contenant du texte

Résolu/Fermé
Andbed Messages postés 14 Date d'inscription mercredi 16 octobre 2013 Statut Membre Dernière intervention 5 juin 2014 - 4 juin 2014 à 15:41
Andbed Messages postés 14 Date d'inscription mercredi 16 octobre 2013 Statut Membre Dernière intervention 5 juin 2014 - 5 juin 2014 à 08:14
Bonjour,

j'aurais souhaité quelques éclairements :

Dans la cellule A1, j'ai une condition qui donne "OK" ou "NC".
De B1 à H1, des chiffres

j'aimerai que :

si A1 = OK alors
les valeurs de B1 à H1 soit copiées de I1 à O1
sinon de P1 à V1 (sous entendu si A1 = "NC")

Je ne sais pas trop quelle syntaxe je dois adopté.

Merci d'avance.

2 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
4 juin 2014 à 16:27
Bonjour,

Allez sur la feuille concernée, clic droit sur l'onglet: Visualiser le code.
Vous copier cela:

Option Explicit
Dim rep As String
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 If Target.Address = Range("A1").Address Then
       rep = Target.Value
        Else
        Exit Sub
    End If
     If rep = "OK" Then
     MsgBox "les valeurs de B1 à H1 soit copiées de I1 à O1 "
    'utiliser l'enregistreur de macro pour mettre le code
  Else
   MsgBox "les valeurs de B1 à H1 soit copiées de  P1 à V1  "
  'utiliser l'enregistreur de macro pour mettre le code
  End If
End Sub


Je vous laisse mettre le code de copie
1
Andbed Messages postés 14 Date d'inscription mercredi 16 octobre 2013 Statut Membre Dernière intervention 5 juin 2014 1
5 juin 2014 à 08:14
j'ai trouvé :

If Range("A1") = "OK" Then

Range("B1:H1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

Range("I1:O1").Select
Selection.Copy

Else
Range("B1:H1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

Range("P1:V1").Select
Selection.Copy
0