Bonjour à tous,
J'aimerais réaliser une macro VBA me permettant d'insérer une ligne de compte dans un tableau (onglet Sheet 1), à partir d'une interface (onglet Admin) dans laquelle l'utilisateur renseignerait 3 données (fichier exemple joint).
Les 3 données à renseigner par l'utilisateur sont: Account Code, Code CC et Parent. À partir des deux dernières données, la macro doit être capable de positionner la ligne de compte exactement au bon endroit dans le tableau. Je vous explique comment:
Code CC est la donnée renseignée en colonne D et permet donc d'identifier une plage potentielle où placer la ligne, car les différentes lignes qui correspondent à des comptes, sont regroupées par Code CC. On a d'abord les CC65, puis les CC1065, CC1115, CC1070.
Parent va permettre d'identifier la ligne exacte de cette plage, où placer la nouvelle ligne de compte. La donnée Parent est en fait le compte "parent" du nouveau compte que l'on va insérer. Tous les comptes parents correspondent aux lignes en gras dans le tableau. Les "parents" ne sont pas uniques dans le tableau mais le sont en revanche pour un "Code CC" donné! D'où l'importance de cette donnée. La macro rechercherait donc au sein de la plage identifiée grâce au CC, la ligne du compte parent renseignée par l'utilisateur avec Parent ; et insérerait la nouvelle ligne juste au dessus de son "parent". Dans cette nouvelle ligne devra figurer:
En colonne B: Account Code
En colonne D: Code CC
En colonne F: "No"
En colonne H: "B"
En colonne I: "N"
Voilà, j'ai essayé de formuler au mieux ce que je souhaitais faire, en espérant que ce soit clair. Mon tableau s'étale sur 12000 lignes et non 468 mais le principe est le même. J'ai quelques connaissances VBA, notamment pour comprendre un code ou en créer un succinct, mais l'ampleur du chantier ici, me semble trop important. Si quelqu'un aurait une réponse à m'apporter, même partielle, ce serait génial.
Je vous remercie d'avance,
SkillzZ