Imbrication d'une macro dans fonction si

Bonjour à tous,
Je cherche à imbriquer une macro dans une fonction si.
n'étant vraiment pas encore formé à VBA je cherche de l'aide svp.

Je voudrai que la colonne F2 de la feuille "creations " ça me fige l'écran puis ça exécute:

Si F2 est vide alors ça m'exécute la macro 1

Sinon ça me laisse ce qu'il y avait écrit et ça passe à F3

Puis ça me répète l'opération jusqu'à F1000

J'ai déjà le Call macro1 mais ce qui me pose soucis c'est l'utilisation de la fonction si
J'ai essayé l'enregistreur de macro mais rien.

voici un lien de téléchargement wetransfer si besoin du classeur
https://wetransfer.com/downloads/6c061fbce7c8477a54c3d60fcaf7a22520220413145940/145688

Cordialement
Brezillon Paul

1 réponse

  1. Contributeur Ambassadeur
    bonjour,
    une suggestion:
    Sub Macro1()
    Dim rg As Range
    Set rg = Sheets("CREATIONS").[f2]
    Do While rg.Offset(, -5) <> ""
        If rg <> "" Then
            With rg.Validation
                .Delete
                .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                xlBetween, Formula1:="=$L$38:$L$44"
                .IgnoreBlank = True
                .InCellDropdown = True
                .InputTitle = ""
                .ErrorTitle = ""
                .InputMessage = ""
                .ErrorMessage = ""
                .ShowInput = True
                .ShowError = True
            End With
        End If
        Set rg = rg.Offset(1)
    Loop
    End Sub
    0
    1. Bonjour et merci!
      Disons que c'est l'inverse que je veux...
      C'est quand la cellule est vide que ça m'affiche la liste sinon si c'est déjà rempli passer à la cellule suivante
      0
    2. @paul47300Finalement j'ai trouvé!!! j'ai rajouté not après le if! :D
      Merci!!
      0
    3. Contributeur Ambassadeur
      @paul47300peux-tu alors marquer la discussion comme résolue?
      0