Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Automatiser par VBA la décomposition d'une ligne d'un fichier en 3 lignes sur un autre onglet

Lordchris

XLDnaute Nouveau
Bonjour à toutes et à tous,

Nouveau sur le forum et employé dans le domaine de la compta/contrôle de gestion, je sèche sur une demande de mon responsable pour automatiser via une macro la décomposition dans un fichier excel d'une ligne pour la retranscrire en 3 lignes dans un autre onglet du même fichier.

Il s'agit d'une décomposition comptable d'une vente en montant total TVAC en montant HTVA en gros et j'aimerai automatiser cette décomposition en autant de lignes que compose le fichier source "sheet".

Dans le fichier joint, le fichier source est l'onglet "sheet" avec les données à utiliser. J'aimerais transformer les 6 lignes présentes dans l'onglet "sheet" en 18 lignes dans un autre onglet, appelé ici "Feuil2".

L'idée est donc dans cet onglet "Feuil2" que :
- la colonne A sera toujours "VES",
- la colonne B reprendra la valeur de la colonne K de l'onglet "sheet",
- la colonne C aura toujours en 1ère ligne la valeur 400000, en 2e ligne la valeur 700320 et en 3e ligne 451100,
- la colonne D reprendra la valeur de la colonne B de l'onglet "sheet" mais uniquement inscrite une fois en 1ère ligne,
- la colonne E reprendra la valeur de la colonne I de l'onglet "sheet",
- la colonne F sera une conversion en période de la colonne E,
- la colonne G reprendra l'année (en fonction de la colonne E toujours),
- La colonne H laissée vide,
- la colonne I reprendra la valeur de la colonne P de l'onglet "sheet" et à inscrire sur la première ligne uniquement (en face de la valeur 400000 de la colonne C),
- la colonne J reprendra les valeurs de la colonne M et O à inscrire respectivement sur la 2e et 3e ligne (en face de 700320 et 451100),
- la colonne K laissée vide,
- la colonne L reprendra toujours la valeur 6113000 à inscrire en 2e ligne

J'espère que c'est quand même clair car pas ce n'est pas facile à expliquer .... Cela sera beaucoup plus parlant avec le fichier.

Merci d'avance pour votre aide.

Je reste à votre disposition si vous avez besoin d'autres informations.

Chris
 

Pièces jointes

  • TEST CB.xlsx
    13.3 KB · Affichages: 12
Solution
RE

Si la source évolue, la requête peut être mise à jour mais si des saisies sont faites sur les colonnes laissées vides, il faut modifier le modèle : à me préciser

Le lien Microsoft vers la version française est mort

Je l'avais mis en we transfer pour un autre membre ici
a récupérer avant le 16/08

chris

XLDnaute Barbatruc
Bonjour

Pourquoi les colonnes I et J sont-elles fusionnées et pourquoi le pied de page est dans le corps de l'onglet ?

Avez-vous la possibilité d'installer l'add on PowerQuery (intégré à Excel à partir de 2016, en add on sur 2010 et 2013) ?
 

Lordchris

XLDnaute Nouveau
Bonjour,

C'était une erreur pour les colonnes I et J et le pied de page.
Je vous renvoie le fichier corrigé.
Je peux installer ce type d'add on oui (sur quel site me le conseilleriez-vous ?)

Merci pour votre aide.

Cordialement

Chris
 

Pièces jointes

  • TEST CB.xlsx
    13.1 KB · Affichages: 3

chris

XLDnaute Barbatruc
RE

Si la source évolue, la requête peut être mise à jour mais si des saisies sont faites sur les colonnes laissées vides, il faut modifier le modèle : à me préciser

Le lien Microsoft vers la version française est mort

Je l'avais mis en we transfer pour un autre membre ici
a récupérer avant le 16/08
 

Pièces jointes

  • Comptes_PQ.xlsx
    31.7 KB · Affichages: 5

Lordchris

XLDnaute Nouveau
Un tout grand merci pour votre aide ! Cela répond parfaitement ma demande !
Je ne connaissais pas Power query .... je vais un peu essayer et customiser.
Si besoin je ferai de nouveau appel à vos services
 

Lordchris

XLDnaute Nouveau
Bonjour Chris,

J'ai à nouveau besoin de votre aide pour faire 2 petits ajustements sur le fichier "Comptes_PQ"...

J'aimerais que dans l'onglet "résultat", on puisse voir 2 informations supplémentaires :
- Colonne K "Ident TVA" : avoir la valeur de la colonne N de la feuille "sheet" en face du compte 451100
- Colonne M "Description" : avoir la valeur de la colonne D de la feuille "sheet" en face du compte 400000

Est-ce faisable ? je veux bien que vous m'expliquiez comment fonctionne power query et comment faire pour modifier un query déjà en place ...

Merci d'avance pour votre retour.

Cordialement,

Chris
 

Pièces jointes

  • Comptes_PQ.xlsx
    31.7 KB · Affichages: 2

chris

XLDnaute Barbatruc
Bonjour

Comme tu peux le voir les données en sheet1 ont été mises sous forme de tableau nommé Data et une liste des compte a été créée sur l'onglet Tech, également sous forme de tableau structuré nommé Comptes

Ces 2 tableaux ont été basculés dans PowerQuery

Si tu ouvres PowerQuery, pour chaque requête, tu peux voir les étapes à droite , avec, pour la plupart, un petit rouage en bout de lignes qui donne le détail de l'action.

Regarde déjà cela.

Je dois m'absenter ce matin. A mon retour je répondrai à tes questions

Une mini approche ici en attendant si tu n'as jamais utilisé PQ : Ce lien n'existe plus
 

Pièces jointes

  • Comptes_PQ2.xlsx
    31.9 KB · Affichages: 4

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…