VBA SI cell vide la remplacer par une autre

Résolu
Anelina -  
 Anelina -
Bonjour,

Je suis débutante en vba, et depuis quelques jours je cherche une solution en vain, donc toute proposition sera la bienvenue.

Pour un tableau à taille variable, je souhaiterai que :

Si cellule B1 vide ET que la cellule Q1 contient "commande d'achat"

remplacer la valeur de B1 par A1

J'avais au départ opté pour cette solution qui etait satisfaisante jusqu'à ce mon extraction me donne des cellules vides non regroupés (et je ne peux pas trier):

derlig = Range("B1").End(xlDown).Row
Range("B" & derlig).Select
ActiveCell.Offset(1, 0).Select
Do While IsEmpty(ActiveCell) And Cells(ActiveCell.Row, 16).Value = "Commandes d'achat"
Cells(ActiveCell.Row, 2).Formula = Cells(ActiveCell.Row, 1).Value
Selection.Offset(1, 0).Select
Loop

merci

2 réponses

  1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour,
    Je suppose dans l'exemple suivant que la colonne A ne contient pas de cellule vide...
    !!! Je n'ai pas testé ce code, donc il convient de l'essayer sur une copie de votre fichier avant tout...!!!
    Dim DerniereLigne As Integer, i As Integer
    DerniereLigne = Range("A65536").End(xlUp).Row
    For i = 1 To DerniereLigne
    If Cells(i, 2).Value = "" And Cells(i, 17).Value = "Commandes d'achat" Then
    Cells(i, 2).Value = Cells(i, 1).Value
    End If
    Next

    Vérifiez aussi l'orthographe de "Commandes d'achat"... Un espace peux tout changer...
    1
  2. Anelina
     
    Merci beaucoup Pijaku pour cette réponse rapide, et en plus ça marche parfaitement!!

    Anelina
    0