EXCEL/MACRO décalage ligne sous condition

Fermé
informatifien Messages postés 741 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 10 janvier 2016 - 19 oct. 2009 à 09:21
informatifien Messages postés 741 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 10 janvier 2016 - 21 oct. 2009 à 07:39
Bonjour,

c'est encore moi, toujours le meme fichier mais nouveau problème, j'ai donc une ligne avec les jours de semaine en dates, je vais copier une ligne dans une autre feuille,je reviens dans ma feuille puis je la colle 2 fois dans les 2 lignes suivant celle où sont les dates avec ce code:

Do ' je cherche la ligne créer avec les dates mais par son numero d'OF
e = e + 1
Loop Until Application.Cells(e, 1) = b

Application.Cells(e + 1, 5).Select ' je selectionne la cellule en dessous de la 1ere date
ActiveSheet.Paste ' je colle mon code article
Application.Cells(e + 2, 5).Select ' je selectionne la cellule en dessous de la 1ere copie
ActiveSheet.Paste ' je colle mon code article une 2° fois


maintenant je voudrai retourner sur la ligne de date, donc retrouver ma variable 'e', puis tourner sur cette ligne (horizontalement) et chaque fois que je trouve un samedi insérer deux cellules dans la deuxième ligne copiée, en decallant vers la droite.

Ma question est:
puis me repositionner sur la bonne ligne juste en rappelant 'e' ou dois je refaire ma boucle? ensuite je supose que je dois faire une boucle horizontale pour trouver le samedi et coller le code de décalage. . .mais je ne veux pas que la boucle s'arete sur le samedi car il y en a plusieurs. . . .

Voilà si quelqu'un pouvait me donner une piste ce serait sympa sachant que pour trouver les samedi j'utilise ça: If Weekday(.Value) = 1

Merci d'avance pour vos lumières . . ..

A voir également:

2 réponses

informatifien Messages postés 741 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 10 janvier 2016 92
19 oct. 2009 à 14:17
alors j'ai essayé ça mais sans résultat concluant:

Do ' je cherche la ligne créer avec les dates mais par son numero d'OF
e = e + 1
Loop Until Application.Cells(e, 1) = b

Application.Cells(e + 1, 5).Select ' je selectionne la cellule en dessous de la 1ere date
ActiveSheet.Paste ' je colle mon code article
Application.Cells(e + 2, 5).Select ' je selectionne la cellule en dessous de la 1ere copie
ActiveSheet.Paste ' je colle mon code article une 2° fois

Do ' je cherche la ligne créer avec les dates mais par son numero d'OF
e = e + 1
Loop Until Application.Cells(e, 1) = b

Do ' je boucle horizontalement jusqu'à la derniere case
f = f + 1
Loop Until applications.Cells(e, f) = Empty

If Weekday(.Value) = 1 Then ' quand je trouve un samedi
Application.Cells(e + 1, f).Select ' je selectionne la cellule en dessous
Selection.Insert Shift:=xlToRight ' et insere une cellule en decalant à droite
Selection.Insert Shift:=xlToRight ' et j'en insere une deuxieme
Else
End If


quand j'exécute ma macro voici le message que j'ai: "réference incorrecte ou non qualifiée" quand la macro s'arete sur (.value)

Donc je suis bloqué je vois pas d'où cela peut venir . .. ..
0
informatifien Messages postés 741 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 10 janvier 2016 92
21 oct. 2009 à 07:39
Allo euuuh personne pour m'aider?

S'il vous plait . . :(
0