Macro - copier des données dans première colonne vide
Résolu/Fermé
oldwise
Messages postés
11
Date d'inscription
mardi 18 août 2015
Statut
Membre
Dernière intervention
8 septembre 2015
-
18 août 2015 à 11:49
oldwise Messages postés 11 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 8 septembre 2015 - 8 sept. 2015 à 10:10
oldwise Messages postés 11 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 8 septembre 2015 - 8 sept. 2015 à 10:10
A voir également:
- Macro - copier des données dans première colonne vide
- Déplacer une colonne excel - Guide
- Formule somme excel colonne - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Trier colonne excel - Guide
- Supprimer page word vide - Guide
1 réponse
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
18 août 2015 à 19:02
18 août 2015 à 19:02
Bonjour,
Tu ne peux pas faire de copie avec des plages multiples
Si j'ai bien compris ce que tu veux faire, je te propose ce code :
Tu ne peux pas faire de copie avec des plages multiples
Range("E4,G4,I4").Copyne fonctionne pas.
Si j'ai bien compris ce que tu veux faire, je te propose ce code :
Sub Tableau_synthèse() ' ' Tableau_synthèse Macro' 'Colonne_ET : colonne en tête 'Colonne_E : colonne entrée Dim Colonne_ET As Integer Dim Colonne_E As Integer Dim w_ET As Worksheet Dim w_E As Worksheet Dim lig As Long 'Mise en place des en têtes Set w_E = Sheets("10 aout 2015") Set w_ET = Sheets("Tableau_Synthese") 'Trouver la première colonne vide et copier les entêtes Colonne_E = 5 Colonne_ET = w_ET.Cells(2, w_ET.Columns.Count).End(xlToLeft).Column + 1 lig = Cells(Rows.Count, Colonne_E).End(xlUp).Row - 3 'Copier les entrées sur la Colonne vide dispo w_E.Cells(4, Colonne_E).Resize(lig, 5).Copy w_ET.Cells(2, Colonne_ET).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False w_ET.Cells(2, Colonne_ET).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False w_ET.Columns(Colonne_ET + 1).Delete w_ET.Columns(Colonne_ET + 2).Delete End Sub
19 août 2015 à 10:54
J'ai essayé la formule, j'ai une erreur d'exe 1004 sur la ligne
w_E.Cells(4, Colonne_E).Resize(lig, 5).Copy
Merci encore
19 août 2015 à 12:02
Tu as bien une feuille "10 aout 2015" avec cette orthographe erronée ?
Sinon, il faut adapter le nom de la feuille
19 août 2015 à 13:32
Oui j'ai vérifié les ortho c'est ok.
C'est curieux. J'ai lancé une nouvelle fois la commande et cela a fonctionné (sauf que cela me retire les trois dernières lignes dès la seconde exécution). Lorsque je refais le test à nouveau c'est soit la ligne suivante qui bloque (si je lance avec la feuille "Tableau_Synthese" active) :
w_E.Cells(4, Colonne_E).Resize(lig, 5).Copy (erreur 1004)
Soit celle-ci (si je lance avec la feuille "10 aout 2015" active) :
w_ET.Cells(2, Colonne_ET).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Message erreur : "cette opération requiert que les cellules fusionnées soient de taille identique"
(Sachant que mes lignes 1 et 2 de la feuille "10 août 2015" sont fusionnées A1:L1 et A2:L2, ce sont les lignes de titres - non utilisées dans mon second tableau)
Franchement merci pour ton aide
19 août 2015 à 14:52
J'ai testé la macro à partir d'une seconde feuille date "17 aout 2015". Au premier lancement cela supprime la colonne C et colle les entêtes à partir de la colonne B. Lorsque je la relance, la macro s'exécute niquel. Au troisième idem mais supprime les trois dernières lignes. Après c'est stable (même résultats y compris les lignes qui restent supprimées)
Bizarre....
19 août 2015 à 19:00
En regardant un peu plus, j'ai oublié une affectation sur la ligne ci-dessous et comme tu lances de plusieurs feuilles cela crée des soucis et en corrigeant cela devrait t'éviter les bugs.
"cette opération requiert que les cellules fusionnées soient de taille identique"
En VBA, comme si tu le fais manuellement, les cellules fusionnées ne peuvent être copiées qu'à l'identique : vérifies bien que ton tableau à copier E4:Ix n'a pas de cellules fusionnées.