Perte formules dans copie ligne avec macro
Fermé
Fat17
Messages postés
87
Date d'inscription
vendredi 25 août 2017
Statut
Membre
Dernière intervention
30 mars 2021
-
9 nov. 2017 à 12:23
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 9 nov. 2017 à 16:16
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 9 nov. 2017 à 16:16
A voir également:
- Perte formules dans copie ligne avec macro
- Copie cachée - Guide
- Formules excel de base - Guide
- Apparaitre hors ligne instagram - Guide
- Vente en ligne particulier - Guide
- Aller à la ligne excel - Guide
1 réponse
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
Modifié le 9 nov. 2017 à 16:19
Modifié le 9 nov. 2017 à 16:19
Bonjour,
1) J'ai un peu de mal à comprendre l'utilisation de ce code : la plage cible et la plage source se situent dans les mêmes colonnes de la même feuille !
2) Il faut absolument éviter d'employer .Select et ActiveCell
3) Je l'aurais écrit comme ça :
Cordialement
Patrice
1) J'ai un peu de mal à comprendre l'utilisation de ce code : la plage cible et la plage source se situent dans les mêmes colonnes de la même feuille !
2) Il faut absolument éviter d'employer .Select et ActiveCell
3) Je l'aurais écrit comme ça :
Option Explicit Public Sub recop() Dim source As Range Dim cible As Range With ActiveSheet 'Dernière cellule remplie en colonne E Set source = .Columns("E").Find("*", , , , xlByColumns, xlPrevious) 'Première cellule vide en colonne I Set cible = .Columns("I").Find("*", , , , xlByColumns, xlPrevious).Offset(1) End With 'Dernière ligne de A à Z remplie en colonne E Set source = source.EntireRow.Resize(1, 26) 'Première ligne de A à Z vide en colonne I Set cible = cible.EntireRow.Resize(1, source.Columns.Count) 'Copier-coller source.Copy Destination:=cible 'Effacements cible.Cells(1, "F").ClearContents cible.Cells(1, "P").ClearContents cible.Cells(1, "U").ClearContents cible.Cells(1, "C").ClearContents End Sub
Cordialement
Patrice