Excel macro?

Résolu
Bonjour tout le monde,

J'ai un petit soucis dans excel, j'ai créé une grille d'évaluation et je souhaiterais effectuer une petite action...

Je souhaiterais que lorsque l'utilisateur rempli la case P18 par NA les cases P19 à P25 soient remplies automatiquement par NA ; mais je souhaite que les cases P19 à P25 soient remplissables individuellement si la case P18 n'a pas été remplie.

J'espère avoir été assez clair.

Merci par avance.

Cordialement.
Configuration: Windows XP
Internet Explorer 6.0

9 réponses

  1. et ben tu fait une codition SI sur tes case P19 à P25 qui donne =SI(P18 = "NA" ; "NA";"")

    voila donc la si ta case P18 contient NA ta case contiendras NA sinon elle seras vide
    0
    1. Ceci n'empêche pas l'utilisateur de remplir P19 à P25 en écrasant la formule.
      Par contre, ladite formule sera perdue.
      0
      1. et ben tu securise t case que tu ve pas qu'il touche et celle que tu veut qu'il puisse modifier tu les securise pas et quand ta fini tu verrouille la feuille
        0
        1. Salut Shuya,
          ce n'était pas une critique, mais un complément à ta réponse. De toute façon, Toinou se rendra bien vite compte qu'il ne peut pas avoir à la fois une formule et une valeur saisie dans une même cellule.
          I.
          0
        2. @Ivan-hoeBonjour à tous,

          Merci pour vos réponses aussi rapides.

          Mais voilà, j'ai déjà fait ce système de formule avec SI. Mais je me demandais s'il n'était pas possible de faire une macro pour justement éviter que l'utilisateur qui rempli les cases individuellement écrase la formule.
          0
      2. Si, bien sûr, en utilisant l'évènement Change de la feuille, par exemple.
        Private Sub Worksheet_Change(ByVal Target As Range)
        If Not Target.Address(False, False) = "P18" Then Exit Sub
        Application.EnableEvents = False
        If UCase(Target.Value) = "NA" Then
            For i = 19 To 25
                Cells(i, 16) = "NA"
            Next i
        End If
        Application.EnableEvents = True
        End Sub

        Ca implique aussi que tes utilisateurs ne désactivent pas les macros à l'ouverture du fichier.
        A suivre...
        0
        1. j'ai deja dit precedement commet faire pour eviter qu'il touche au cas ou il y a les si .

          et faire un macro n'est pas envisageable elle serait trop longue
          0
          1. Merci pour la macro je vais essayer.

            Shuya89 je souhaite que les cases P18 à P25 soient accessibles par l'utilisateur, mais que s'il remplit la case P18 alors les cases P19 à P25 se remplissent automatiquement. Donc il n'y a pas de cellules auxquelles je ne veux pas qu'il touche.
            0
            1. a donc un si suffit
              0
              1. dans quelle case???
                0
            2. dans une macro :

              Sub remplissage ()
              For i = 19 to 25
              cells(i, 16).Select
              ActiveCells.FormulaR1C1 = "=Si(...........)"
              Next i

              End sub
              0
              1. Merci beaucoup pour vos réponses!!!

                Je vais essayer de ce pas.

                Bonne journée à tous.
                0