Copier cellules sur la première ligne vide d'une autre feuille
Flobox49
Messages postés
34
Date d'inscription
Statut
Membre
Dernière intervention
-
Flobox49 Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Flobox49 Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaiterai créer une macro qui me copie plusieurs cellules d'une feuille, dans un tableau situé sur une autre feuille de façon à extraire de ces données pour sauvegarde et faire un graphique !
je m'explique,
j'ai besoin de copier la cellule B6;E19;F19;G19;E23;G23 D'une feuille nomme TOP 30, pour les copier dans un tableau " heures" dans une feuille nommé Save_heures, et je souhaiterai que la macro copie ces cellules dans la 1er ligne vide de mon tableau, et que cela s’incrémente à chaque fois que je lance la macro!
la première ligne de Save commencerai en ligne 2 car ligne 1 c'est les titres des colonnes.
c'est une sorte de tableau de sauvegarde vu que la première feuille " top 30" seras effacée et remise à zéro tous les jours.
hors j'ai bien fais des essais avec une formule mais celle-ci alimente toujours le tableau dans la 1er ligne après les titres, mais ne s'incrémente pas.
Merci de votre aide
Je souhaiterai créer une macro qui me copie plusieurs cellules d'une feuille, dans un tableau situé sur une autre feuille de façon à extraire de ces données pour sauvegarde et faire un graphique !
je m'explique,
j'ai besoin de copier la cellule B6;E19;F19;G19;E23;G23 D'une feuille nomme TOP 30, pour les copier dans un tableau " heures" dans une feuille nommé Save_heures, et je souhaiterai que la macro copie ces cellules dans la 1er ligne vide de mon tableau, et que cela s’incrémente à chaque fois que je lance la macro!
la première ligne de Save commencerai en ligne 2 car ligne 1 c'est les titres des colonnes.
c'est une sorte de tableau de sauvegarde vu que la première feuille " top 30" seras effacée et remise à zéro tous les jours.
hors j'ai bien fais des essais avec une formule mais celle-ci alimente toujours le tableau dans la 1er ligne après les titres, mais ne s'incrémente pas.
Merci de votre aide
A voir également:
- Copier cellules sur la première ligne vide d'une autre feuille
- Comment supprimer une page vide sur word - Guide
- Aller à la ligne dans une cellule excel - Guide
- Comment copier une vidéo youtube - Guide
- Partager photos en ligne - Guide
- Verrouiller cellule excel sans verrouiller la feuille - Guide
3 réponses
Bonjour,
Est-ce que tu peux donner quelques précisions ? "heures" est le nom d'un tableau ou celui d'une plage ? Est-ce qu'il s'agit d'écrire sous ce tableau ou d'insérer les cellules s'il y a une ligne vide dans le tableau ?
Cordialement.
Daniel
Est-ce que tu peux donner quelques précisions ? "heures" est le nom d'un tableau ou celui d'une plage ? Est-ce qu'il s'agit d'écrire sous ce tableau ou d'insérer les cellules s'il y a une ligne vide dans le tableau ?
Cordialement.
Daniel
Bonjour Daniel,
Oui "heures" est le nom du tableau.
Oui les cellules a copiés sont a insérer dans la 1er ligne vide dans le tableau "heures"
Du coup un déclenchement de la macro viens copié chaque cellules sur une ligne vide, les cellules sont a copié sur la même ligne.
Dans le tableau " heures"
1er déclenchement =
B6 en A2
E19 en B2
Etc....
Et le prochain déclenchement de la macro copiera
B6 en A3
E19 en B3
Etc...
Merci de ton aide Daniel
Oui "heures" est le nom du tableau.
Oui les cellules a copiés sont a insérer dans la 1er ligne vide dans le tableau "heures"
Du coup un déclenchement de la macro viens copié chaque cellules sur une ligne vide, les cellules sont a copié sur la même ligne.
Dans le tableau " heures"
1er déclenchement =
B6 en A2
E19 en B2
Etc....
Et le prochain déclenchement de la macro copiera
B6 en A3
E19 en B3
Etc...
Merci de ton aide Daniel
Bonjour
pour trouver la 1° ligne vide
pour trouver la 1° ligne vide
Ligvid = Columns("A").Find("", Range("A1")).Row
.
Si j'ai bien compris, mets cette macro dans le module de la feuille "top 30" :
Classeur :
https://mon-partage.fr/f/oYKYFqJj/
Daniel
Private Sub Worksheet_Change(ByVal Target As Range) Dim Ligne As Long, C As Range, Col As Integer If Intersect(Target, [B6,E19:G19,E23,G23]) Is Nothing Then Exit Sub If Target.Count = 1 And Target.Value <> "" Then If Application.CountA([B6,E19:G19,E23,G23]) < 6 Then Exit Sub With Sheets("Save_heures") Ligne = .[A:A].Find("", .[A1]).Row For Each C In [B6,E19:G19,E23,G23] Col = Col + 1 C.Copy .Cells(Ligne, Col) Next C End With End If End Sub
Classeur :
https://mon-partage.fr/f/oYKYFqJj/
Daniel
je n'ai pas pu attendre !!!
j'ai bien téléchargé votre fichier mais comment vous exécuter la Macro ? car elle n’apparaît pas dans la fenêtre de visual ainsi que dans développeur !
ce que je retrouve dans le fichier partagé est parfait selon moi, mais je n’arrive pas à comprendre comment déclencher la macro, cela ce fait en automatique ?
cordialement
j'ai bien téléchargé votre fichier mais comment vous exécuter la Macro ? car elle n’apparaît pas dans la fenêtre de visual ainsi que dans développeur !
ce que je retrouve dans le fichier partagé est parfait selon moi, mais je n’arrive pas à comprendre comment déclencher la macro, cela ce fait en automatique ?
cordialement
Bonjour,
L'enregistreur de macro est très pratique mais ne peut que mémoriser tout ce que tu fais sur Excel.
VBA est un langage de programmation permettant de réaliser des applications impossibles avec l'enregistreur mais qui demande un apprentissage pour devenir autonome
Je me permets de te conseiller un site ( qui date) très pédagogique et décontracté
http://www.info-3000.com/vbvba/cours/index.php
ensuite tu pourras potasser ces tutos
https://excel.developpez.com/cours/?page=prog#prog
au passage:
l'utilisation de crochets [ ] sur le site de l'excellent jacques Boisgontier est normalement utilisée pour écrire des formules matricielles dans VBA (dixit Laurent Longre), mais comme tout le monde je les utilise suite à un décret de mon poil dans la main ;o).
L'enregistreur de macro est très pratique mais ne peut que mémoriser tout ce que tu fais sur Excel.
VBA est un langage de programmation permettant de réaliser des applications impossibles avec l'enregistreur mais qui demande un apprentissage pour devenir autonome
Je me permets de te conseiller un site ( qui date) très pédagogique et décontracté
http://www.info-3000.com/vbvba/cours/index.php
ensuite tu pourras potasser ces tutos
https://excel.developpez.com/cours/?page=prog#prog
au passage:
l'utilisation de crochets [ ] sur le site de l'excellent jacques Boisgontier est normalement utilisée pour écrire des formules matricielles dans VBA (dixit Laurent Longre), mais comme tout le monde je les utilise suite à un décret de mon poil dans la main ;o).