Macro coller dans la première colonne vide
Macroblem
-
cs_Le Pivert Messages postés 7904 Date d'inscription Statut Contributeur Dernière intervention -
cs_Le Pivert Messages postés 7904 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Bonjour j'ai deux feuilles excel. une feuille (DONNEES) contenant des données, une deuxième feuille (Stockage donnees) pour récupérer les données de la 1ere feuille et conserver. les données de la 1ere feuille varient en fonction des échantillons d'où l’intérêt de récupérer les données en cas de besoin.
je veux une macro pour copier dans la première feuille et coller dans la deuxième feuille (jusque là tous va bien). Le problème c'est que je dois coller les données à partir de la première colonnes vide (sur la ligne E16) de la deuxième page.
j'ai essayé cette macro et tant d'autre mais j'y arrive pas. Aidez moi s'il vous plait.
cordialement
Sub Macro1()
'
' Macro1 Macro
'
Dim emptycolumn As Long
Sheets("DONNEES").Select
Range("A53").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.SpecialCells(xlCellTypeVisible).Select
Selection.Copy Cells(16, Columns.Count).End(xlToRight).Offset(, 1)
End Sub
Bonjour j'ai deux feuilles excel. une feuille (DONNEES) contenant des données, une deuxième feuille (Stockage donnees) pour récupérer les données de la 1ere feuille et conserver. les données de la 1ere feuille varient en fonction des échantillons d'où l’intérêt de récupérer les données en cas de besoin.
je veux une macro pour copier dans la première feuille et coller dans la deuxième feuille (jusque là tous va bien). Le problème c'est que je dois coller les données à partir de la première colonnes vide (sur la ligne E16) de la deuxième page.
j'ai essayé cette macro et tant d'autre mais j'y arrive pas. Aidez moi s'il vous plait.
cordialement
Sub Macro1()
'
' Macro1 Macro
'
Dim emptycolumn As Long
Sheets("DONNEES").Select
Range("A53").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.SpecialCells(xlCellTypeVisible).Select
Selection.Copy Cells(16, Columns.Count).End(xlToRight).Offset(, 1)
End Sub
A voir également:
- Macro coller dans la première colonne vide
- Déplacer colonne excel - Guide
- Trier colonne excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Supprimer page word vide - Guide
- Colonne word - Guide
2 réponses
Bonjour,
voir la dernière colonne utilisée:
https://excel-malin.com/tutoriels/vba-tutoriels/vba-trouver-la-derniere-cellule-utilisee/
et pour faire une copie d'une plage:
https://docs.microsoft.com/fr-fr/office/vba/api/excel.range.copy?irgwc=1&OCID=AID2000142_aff_7809_1246483&tduid=%28ir__6kqse6c239kfqwktkk0sohz3zv2xszudwxhno6pr00%29%287809%29%281246483%29%28%28ccf498c07423a97c10e599b3ab6caa6f%29%28152407%29%281910362%29%28v03040001208613671d3e7d824c2ca7cd619fd387bf61%29%28%29%29%28ccf498c07423a97c10e599b3ab6caa6f%29&irclickid=_6kqse6c239kfqwktkk0sohz3zv2xszudwxhno6pr00
Voilà
voir la dernière colonne utilisée:
https://excel-malin.com/tutoriels/vba-tutoriels/vba-trouver-la-derniere-cellule-utilisee/
et pour faire une copie d'une plage:
https://docs.microsoft.com/fr-fr/office/vba/api/excel.range.copy?irgwc=1&OCID=AID2000142_aff_7809_1246483&tduid=%28ir__6kqse6c239kfqwktkk0sohz3zv2xszudwxhno6pr00%29%287809%29%281246483%29%28%28ccf498c07423a97c10e599b3ab6caa6f%29%28152407%29%281910362%29%28v03040001208613671d3e7d824c2ca7cd619fd387bf61%29%28%29%29%28ccf498c07423a97c10e599b3ab6caa6f%29&irclickid=_6kqse6c239kfqwktkk0sohz3zv2xszudwxhno6pr00
Voilà
Je vous remercie de votre réponse.
Je n'y arrive toujours pas; Je sais chercher mais je ne sais pas faire le code qui me permet de coller dans la dernière colonne.
Ce serait possible de me donner un exemple s'il vous ?
merci d'avance !
Je n'y arrive toujours pas; Je sais chercher mais je ne sais pas faire le code qui me permet de coller dans la dernière colonne.
Ce serait possible de me donner un exemple s'il vous ?
merci d'avance !
je dois coller les données à partir de la première colonnes vide (sur la ligne E16)
il y a une incohérence c'est la cellule E16 ou sur la ligne 16 de la 1ère colonne vide
je penche pour la 2ème. Voici donc la macro:
il faudra adapter le nom des feuilles et la plage de copie
ce code il était dans les 2 liens!
il y a une incohérence c'est la cellule E16 ou sur la ligne 16 de la 1ère colonne vide
je penche pour la 2ème. Voici donc la macro:
il faudra adapter le nom des feuilles et la plage de copie
Option Explicit Sub test() Dim DerniereColonneUtilisee As Integer DerniereColonneUtilisee = Worksheets("Feuil2").Cells(1, Columns.Count).End(xlToLeft).Column + 1 'où X est le numéro de la ligne Worksheets("Feuil1").Range("A1:D20").Copy _ Destination:=Worksheets("Feuil2").Cells(16, DerniereColonneUtilisee) End Sub
ce code il était dans les 2 liens!
Merci beaucoup pour votre réponse.
J'ai copié coller le code, celui qui est souligné et en italique ne fonctionnement pas, je ne sais pas pourquoi.
sachant je ne veut pas coller qu'une plage définie, j'utilise "Range(Selection, Selection.End(xlToRight)).Select"
et Range(Selection, Selection.End(xlDown)).Select" pour prendre en compte les variations de plage. Serait-il possible de m'aider avec l'ensemble s'il vous plait ? J'y parviens vraiment pas. encore merci pour tout.
19.ccm2.net/qxJdZLfWYPuEYH8Wf699lOxccmw=/b1f16206e5d14184bd7564b620dd3a16/tmp/Capture.PNG
|fancy]
Sub Macro1()
'
' Macro1 Macro
Dim DerniereColonneUtilisee As Integer
DerniereColonneUtilisee = Worksheets("Stockage donnees").Cells(1, Columns.Count).End(x1ToLeft).Column + 1 'où X est le numéro de la ligne
Sheets("DONNEES").Select
Range("A53").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.SpecialCells(xlCellTypeVisible).Select
Selection.Copy Destination:=Worksheets("stockage donnees").Cells(16, DerniereColonneUtilisee)
End Sub
J'ai copié coller le code, celui qui est souligné et en italique ne fonctionnement pas, je ne sais pas pourquoi.
sachant je ne veut pas coller qu'une plage définie, j'utilise "Range(Selection, Selection.End(xlToRight)).Select"
et Range(Selection, Selection.End(xlDown)).Select" pour prendre en compte les variations de plage. Serait-il possible de m'aider avec l'ensemble s'il vous plait ? J'y parviens vraiment pas. encore merci pour tout.
19.ccm2.net/qxJdZLfWYPuEYH8Wf699lOxccmw=/b1f16206e5d14184bd7564b620dd3a16/tmp/Capture.PNG
Sub Macro1()
'
' Macro1 Macro
Dim DerniereColonneUtilisee As Integer
DerniereColonneUtilisee = Worksheets("Stockage donnees").Cells(1, Columns.Count).End(x1ToLeft).Column + 1 'où X est le numéro de la ligne
Sheets("DONNEES").Select
Range("A53").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.SpecialCells(xlCellTypeVisible).Select
Selection.Copy Destination:=Worksheets("stockage donnees").Cells(16, DerniereColonneUtilisee)
End Sub