Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/01/2012, 19h28   #1
Invité de passage
 
Homme
Conseil - Consultant en systèmes d'information
Inscription : janvier 2012
Messages : 1
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Conseil - Consultant en systèmes d'information
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : janvier 2012
Messages : 1
Points : 0
Points : 0
Par défaut Déplacer ligne de tableau sans écraser les autres

Bonjour à tous,

Je souhaite faire des opérations sur un tableau sous excel avec une macro.
le traitement que je veux mettre en place est de déplacer une ligne entière dans un tableau en fonction de la valeur d'une cellule.
Les problèmes que j'ai constatés en essayant de bricoler un peu du code, sont les suivants:

1/ la ligne est "coupée" (cut) et insérée dans son emplacement cible en écrasant l'ancienne.
2/ le tableau ne reste pas compact car le ligne supprimé laisse du vide derrière.

Je souhaiterai avoir vos aides sur ces deux points pour au final arriver à avoir une table:

1/ Complète: l'insertion de nouvelle ligne décale toutes les lignes qui vont la suivre dans la table cible.
2/ compacte: dès qu'une ligne est coupée le vide qui se crée est comblé par la montée des lignes plus en dessous.

Merci par avance pour vos réponses.
kalitous est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2012, 19h36   #2
Expert Confirmé Sénior
 
Avatar de mercatog
 
Inscription : juillet 2008
Messages : 5 848
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 5 848
Points : 13 907
Points : 13 907
Quel est le code que tu utilises? c'est là qu'on peux agir

Sinon, une piste
On coupe la ligne 3 et on l'insère juste avant la ligne 6 de la feuille Feuil2
Code :
1
2
3
4
5
With Worksheets("Feuil2")
    .Rows(3).Cut
    .Rows(6).Insert
    Application.CutCopyMode = False
End With
__________________
Cordialement.
mercatog est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h46.


 
 
 
 
Partenaires

Hébergement Web