Macro à compléter

Fermé
Zeni - Modifié par crapoulou le 16/10/2016 à 22:07
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 - 17 oct. 2016 à 23:40
Bonjour à tous

J'ai fait une macro dans le but est à l'aider d'une userform de créer une ligne sur un tableau lorsque j'appuie dessus et je souhaiterais que la ligne soit créer à la fin du tableau uniquement mais je ne sais pas comment modifier la formule. Quelqu'un a-t-il une solution à me proposer ?

Le tableau est de C12 à G30.

Sub Lignes()
'
' Lignes Macro
'
    Rows("21:21").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("C20:G20").Select
    Selection.Copy
    Range("C21:G21").Select
    ActiveSheet.Paste
End Sub


Merci pour votre aide.


A voir également:

1 réponse

Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523
17 oct. 2016 à 10:34
Bonjour,

Essaie comme cela
Sub Lignes()
Dim Plage As Range
Set Plage = Range("C" & Rows.Count).End(xlUp).Resize(, 5)
Plage.Copy Plage.Offset(1)
End Sub

A+
0
Bonjour,

Oui ca fonctionne vraiment bien. J'ai deux autres tableaux de C34 à G52 et de
C56 à G38 il y a donc trois userforms. Je voulais appliquer la macro à chaque tableau , Est-ce possible ? :-)
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523 > Zeni
17 oct. 2016 à 11:18
Euh ! un tableau de C34 à G52, j'arrive à me faire une idée.
Par contre, un tableau de C56 à G38, ça me semble douteux.

De plus, à chaque lancement de la macro la dimension des tableaux va évoluer. Tu ne crains pas les chevauchements ?

A+
0
Heu pardon G68 oui je le crains mais est-ce que ca ne serait pas possible de faire en sorte de rajouter une ligne à la fin du tableau en copiant la ligne du dessus ainsi il n'y aurait pas de chevauchement ?
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523 > Zeni
17 oct. 2016 à 23:40
Si tu insères une ligne à chaque lancement de la macro, la position des tableaux 2 et 3 va évoluer (les tableaux vont "descendre").
Il faut pouvoir déterminer cette position afin de permettre le rajout d'une ligne au tableau choisi.
Et pour cela, il faut disposer d'une référence pour chacun des tableaux.
Il faut également vérifier quelle est la meilleure façon de déterminer la dernière ligne renseignée du tableau.
Le plus simple, c'est que tu joignes un exemple de ton fichier.

Tu vas dans https://www.cjoint.com/ 
Tu cliques sur [Parcourir] pour sélectionner ton fichier
Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
Au bout de quelques secondes la deuxième page s'affiche, avec le lien en bleu souligné ; clic droit dessus et "Copier l’adresse du lien"
Tu reviens dans ta discussion sur commencamarche , et dans ton message de réponse tu fais "Coller".

A+
0