Modifier et copier des lignes dans une autre feuille

Bonjour,

Je découvre un peu plus Excel et j'aimerai créer une fonction qui, pour chaque ligne d'une feuille (sauf en-tête) :

1) Regarde si il y a plus d'un mois de différence entre les cellules E et F

2) Ajoute un mois à E si c'est bon, efface la ligne sinon

3) Copie toutes les lignes ayant survivantes à la fin d'une autre feuille

(et ça serait réexécuté chaque mois)

Je me suis essayée à programmer, mais ça ne marche pas encore...

function Popipo(){
  Sheets("Mensualités").Select
  ActiveSheet.Range("A2").Select
  var col = ActiveSheet.Rows.Count
   for (i=2; i<=col; i++){ 
    var madate = ActiveCell.Offset(0,4);
    if(ActiveCell.Offset(0,5)-DateAdd("m",1,madate)>=0){
      DateAdd("m",1,ActiveCell.Offset(0,4));
      ActiveCell.Offset(1,0).Select
    } else {
      Rows(i).Delete
    };  
};
Range("A2:E2").Select;
Range(Selection,Selection.End(xlDown)).Select;
Selection.Copy;
Sheets("Autres dépenses").Select;
ActiveSheet.Range("d" & ActiveSheet.Rows.Count).End(xlUp).Offset(1, 0).Paste;
}

Hello,

ça ne fonctionne pas car tu mélanges 2 languages ... VBA & JS

à tester :

function Popipo()
  Sheets("Mensualités").Select

   col = ActiveSheet.Rows.Count
   for i=2 to col
        ActiveSheet.Range("A"& i ).Select
        madate = ActiveCell.Offset(0,4)
        if(ActiveCell.Offset(0,5)-DateAdd("m",1,madate)>=0 then
                 ActiveCell.Offset(0,5) = DateAdd("m",1,ActiveCell.Offset(0,4))

       else
            Rows(i).Delete
       end if
   next
Range("A2:E2").Select
Range(Selection,Selection.End(xlDown)).Select
Selection.Copy Sheets("Autres dépenses").Range("d" & ActiveSheet.Rows.Count).End(xlUp).Offset(1, 0)
end function
Rechercher des sujets similaires à "modifier copier lignes feuille"