Macro - Déplacer cellules sur ligne précise

Bonjour à tous,

Je sollicite votre aide pour une macro que je n'arrive pas à coder.

J'aimerais m'inspirer de ce qui se fait sur les 2 topics suivants :

https://forum.excel-pratique.com/excel/archiver-des-donnes-t81076.html

https://forum.excel-pratique.com/excel/deplacement-cellule-dans-2-feuills-differentes-t81420.html

L'idée est de déplacer des cellules en fonction d'un code client donné, sur un autre onglet, à la place qui correspond au code client concerné.

Le code du client dans l'onglet 1 est saisi manuellement. Dans cet exemple il faudrait donc déplacer les cellules de A3 à A13 (en tout cas toutes les lignes contenant une donnée en colonne A de l'onglet Fiche) pour les insérer à partir de A34 par exemple, tout en déplaçant du coup aussi les colonnes A, C & D de "Fiche" vers les colonnes B, C & D, en copiant bien le code client aussi (ici code 4 pour l'ensemble des lignes copiées).

J'espère avoir été clair sur mon besoin je suis dispo évidemment pour apporter des détails si besoin.

Grand merci à vous pour votre aide précieuse.

20test.xlsm (277.94 Ko)

Avez vous une idée s'il vous plait? Je bloque.

Bonsoir,

Ci-joint une proposition à tester.

Bonne soirée

Bouben

Bonjour bouben,

Merci pour cette réponse qui effectivement fonctionne super bien ! Ca décale bien aussi si on change le code client c'est génial !

Option Explicit

Private Sub CommandButton1_Click()
  Call InsertARow
End Sub

Sub InsertARow()
  ActiveCell.EntireRow.Insert Shift:=xlDown
  ActiveCell.Offset(-1, 0).EntireRow.Copy Cells(ActiveCell.Row, 1)
  On Error Resume Next
  ActiveCell.EntireRow.SpecialCells(xlCellTypeConstants, xlNumbers + _
                                                         xlTextValues + _
                                                         xlLogical + _
                                                         xlErrors).ClearContents
End Sub

Bon, histoire que je comprenne un peu.. Ou est il fait mention de la cellule à prendre en compte pour déterminer le bon client, et surtout à quelle destination les données sont envoyées sur la "Feuil1"? Y a t il d'autres paramètres ailleurs non visibles sur ces lignes de code ici?

Bonjour,

Je comprends l'incompréhension ! Le code dans ton message est l'ancien code, non utilisé.

Le nouveau code est derrière le bouton "Insertion" (CommandButton1) de l'onglet "Fiche". Il y a un peu plus de lignes

Quelques commentaires dans le code, je te laisse regarder et comprendre ...

Bonne journée

Bouben

Haha en effet je me suis "fait avoir"; je n'avais pas regardé le contenu du bouton en mode création

Bon eh bien le moins qu'on puisse dire c'est que c'est très complet et technique, et que je n'aurai pas pu faire sans ton aide précieuse !

De ce que je crois comprendre, je peux donc avoir des dizaines de milliers de lignes sur le 2è onglet, c'est niquel parce qu'en lui indiquant de chercher dans la colonne A entière, pas besoin d'indiquer un nombre de ligne maximum hasardeux ;p (je mettrai à jour un autre de mes fichiers ou j'ai indiqué de chercher par exemple dans la zone A3:A50000 pour être tranquille )

Merci beaucoup pour cette aide, pour mon prochain besoin similaire, je m'appuierai sur cette macro pour mieux assimiler tout son contenu ! ;-D

Rechercher des sujets similaires à "macro deplacer ligne precise"