avec VB, dupliquer ligne en mode plan

rafi93

XLDnaute Occasionnel
bonjour
en mode utilisation de excel, la duplication d'une ligne (copier/inserer-coller) en mode plan (colonnes groupées) donne des résultats aléatoires :
- parfois ça marche : une fois inserée-collée, les données sont correctes quand on déplie le mode plan
- parfois excel refuse : "interdit de déplacer des lignes dans le tableau" ou un truc du genre
- parfois ça ne fait qu'inserer une ligne vide
- parfois ça colle les valeurs, mais pas aux bons endroits dans la ligne, comme si il copiait les cellules visibles puis les collait sans tenir compte du mode plan

j'ai un peu de mal à savoir dans quelles conditions ce résultat varie.
la seule solution à peu près fiable est de déplier le mode plan jusqu'au dernier niveau, insérer une ligne vide, copier la ligne souhaitée et la coller sur la ligne vide, ce qui est laborieux

je cherche à créer une macro VB pour cela, mais qui me redonne la feuille sans changer les niveaux affichés (certaines colonnes peuvent etre deployées, les autres non), et je n'y arrive pas :
- pas trouvé de commande qui me permette de lire les paramètres du mode plan de la feuille (quelles colonnes sont avec quels niveaux)
- la commande Worksheets("Feuil1").Outline.ShowLevels 1 (ou 2, ou 3) ne fait rien

comment faire ?

merci !!
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : avec VB, dupliquer ligne en mode plan

Bonjour Rafi, bonjour le forum,

Une solution toute simple est de lancer l'enregistreur de macro, d'effectuer les différents changements, d'éteindre l'enregistreur et d'aller lire le code.
Une autre solution, aussi simple, est d'envoyer ton fichier en pièce jointe pour qu'on puisse mieux comprendre et tester. L'idéal serait d'avoir dans un onglet la situation avant le traitement par la macro et dans un autre le résultat désiré.
 

rafi93

XLDnaute Occasionnel
Re : avec VB, dupliquer ligne en mode plan

merci Robert

j'avais bien testé avec l'enregistreur sans arriver à mes fins

entre temps j'ai peut être trouvé, il suffirait de selectionner non pas la ligne de la feuille mais la ligne restreinte au tableau, et même en mode plan, les cellules cachées sont dupliquées "au bon endroit".

mais comme c'était assez aléatoire, j'attends de voir dans la durée

peut être à bientôt?
 

rafi93

XLDnaute Occasionnel
Re : avec VB, dupliquer ligne en mode plan

rebonjour...

le probleme du mode plan semblant résolu, j'aurais une question sur le code suivant, que j'ai trouvé sur le web, pour mettre en évidence la ligne d'un tableau contenant la cellule active :

Sub titi()
Range(Cells(ActiveCell.Row, ActiveCell.CurrentRegion.Column), Cells(ActiveCell.Row, ActiveCell.CurrentRegion.Columns.Count + ActiveCell.CurrentRegion.Column - 1)).Interior.ColorIndex = 8

End Sub

pourquoi est-ce si compliqué ??

n'y a t il pas une façon de l'écrire plus simplement, du genre
Ce_tableau.ActiveCell.Row.Interior.ColorIndex = 8
qui est probablement du charabia VB mais qui donne une idée de ce que je cherche.

je dois dire que j'ai un peu de mal à me faire à la syntaxe VB, si quelqu'un avait un document (autre que le guide de reference) expliquant comment lire le code VB avec des exemples, je suis preneur.

merci !
 

Discussions similaires

Statistiques des forums

Discussions
314 629
Messages
2 111 345
Membres
111 109
dernier inscrit
djameldel