je souhaiterais faire et comprendre une petite macro pour copier /insérer une plage de cellule, (toujours les cellules de B aK + la cellule selectionner A de la ligne )les sous la cellule sélectionner.
je ne sais pas si je suis bien clair
Re,
Un essai en PJ avec cette macro que j'ai essayé de commenter :
VB:
Sub InsererLigne()
L = ActiveCell.Row ' On récupère le N° de ligne de la cellule active
Application.DisplayAlerts = False ' On supprime les alertes ( car demande fichier )
Range("A" & L & ":K" & L).Copy ' On copie les cellules A:K de la ligne active
Range("A" & L & ":K" & L).Insert Shift:=xlDown ' On insère une ligne et colle les valeurs
Range("A" & L + 1 & ":K" & L + 1).Interior.Pattern = xlNone ' On supprime la couleur jaune
Application.DisplayAlerts = True ' On remet les alertes en place
End Sub
Pour insérer une ligne, on clique sur une cellule et on appuie sur le bouton.
Une ligne est créer et les valeurs et formules de la ligne précédente sont copiées.
Le Application.DisplayAlerts = False est pour supprimer la demande de fichier qui est demandé, à cause des cellules M17 et M18 qui pointe sur un fichier. Une fois installé avec le fichier en place ( Pointage -04.00-2021.xlsm ) ces deux lignes peuvent être supprimées.
Re,
Un essai en PJ avec cette macro que j'ai essayé de commenter :
VB:
Sub InsererLigne()
L = ActiveCell.Row ' On récupère le N° de ligne de la cellule active
Application.DisplayAlerts = False ' On supprime les alertes ( car demande fichier )
Range("A" & L & ":K" & L).Copy ' On copie les cellules A:K de la ligne active
Range("A" & L & ":K" & L).Insert Shift:=xlDown ' On insère une ligne et colle les valeurs
Range("A" & L + 1 & ":K" & L + 1).Interior.Pattern = xlNone ' On supprime la couleur jaune
Application.DisplayAlerts = True ' On remet les alertes en place
End Sub
Pour insérer une ligne, on clique sur une cellule et on appuie sur le bouton.
Une ligne est créer et les valeurs et formules de la ligne précédente sont copiées.
Le Application.DisplayAlerts = False est pour supprimer la demande de fichier qui est demandé, à cause des cellules M17 et M18 qui pointe sur un fichier. Une fois installé avec le fichier en place ( Pointage -04.00-2021.xlsm ) ces deux lignes peuvent être supprimées.
Merci beaucoup beaucoup ça marche Nickel.
de plus avec tes explication j'ai pu supprimé les deux commandes pour les alertes et la commande pour la ligne jaune qui était sur la PJ juste pour montrer ce que je voulais.
Lorsque j'ai des interrogations sur la façon d'écrire une macro en VBA, je cherche sur les forums. Mais, souvent, dans mon Excel j'active la procédure "enregistrer une macro", j'enchaine en faisant les manipulations qui m'intéressent, ensuite je fais "fin de l'enregistrement".
Il me suffit ensuite d'aller consulter la macro qu'Excel a enregistré.