Bonjour cher amis !
Deux petites questions auxquelles je ne trouve pas de réponse
1) lorsque j'exécute ma macro, elle est sensée copier dans une feuille les lignes des autres feuilles ou se trouve le mot commande, et cela marche tres bien.
J'aurai besoin d'y ajouter deux choses :
Le fait qu'elle me copie les 5x2 premieres cellules (de A1 a E2) a chaque fois qu'elle change de feuille
et le fait qu'elle n'écrive pas si il y a des données sur la ligne concernée dans la feuille de destination. En effet, elle commence par la fin pour remonter dans la feuille de destination, et elle m'ecrase des données que j'ai mis.
j'ai bien essayer quelques trucs pour copier les premiers cellules de chaque feuille mais ma syntaxe est mauvaise car cela ne marche pas
Quelqu'un pourrait il m'aider ?
Voici le code en question
Deux petites questions auxquelles je ne trouve pas de réponse
1) lorsque j'exécute ma macro, elle est sensée copier dans une feuille les lignes des autres feuilles ou se trouve le mot commande, et cela marche tres bien.
J'aurai besoin d'y ajouter deux choses :
Le fait qu'elle me copie les 5x2 premieres cellules (de A1 a E2) a chaque fois qu'elle change de feuille
et le fait qu'elle n'écrive pas si il y a des données sur la ligne concernée dans la feuille de destination. En effet, elle commence par la fin pour remonter dans la feuille de destination, et elle m'ecrase des données que j'ai mis.
j'ai bien essayer quelques trucs pour copier les premiers cellules de chaque feuille mais ma syntaxe est mauvaise car cela ne marche pas
Quelqu'un pourrait il m'aider ?
Voici le code en question
Code:
Private Sub CopieLigneCDE(wsFeuil As Worksheet)
Dim F_S As Worksheet 'Feuille source
Dim F_D As Worksheet 'Feuille Destination
Dim Lig_S As Long 'Ligne source
Dim Lig_D As Long 'Ligne destination
Set F_S = wsFeuil 'feuille source
Set F_D = Sheets("CDES") 'feuille destination = onglet(CDES)
' max ligne en decrementation sur destination.
Lig_D = F_D.Range("E" & Cells.Rows.Count).End(xlUp).Row + 1
MotCherche = "commande"
'Presentation : copie du titre de chaque feuille sur la feuille CDES
'a venir
'Programme *****************************************
For Lig_S = F_S.Range("E" & Cells.Rows.Count).End(xlUp).Row To 2 Step -1
'en passant à la ligne précédente par décrémentation (-1)
'Quand la valeur est inférieure à 1, on passe à la ligne suivant Next Lig_S
If UCase(F_S.Range("E" & Lig_S).Value) Like "*" & UCase(MotCherche) & "*" Then
'E testé contient MotCherche
F_S.Rows(Lig_S).Copy Destination:=F_D.Rows(Lig_D)
'on copie la ligne source sur la ligne destination
Lig_D = Lig_D + 1
'on passe à la ligne destination suivante
'F_S.Rows(Lig_S).Delete
'on efface la ligne source
End If
Next Lig_S
End Sub