bonjour à tous,
je cale sur un sujet qui ne doit pas être très compliqué mais je ne trouve pas de réponses à mes questions sur le forum et je perds un temps fou à faire des copier coller
mon sujet:
Page 1 J'ai des données verticales (plan comptable) réparties sur plusieurs colonnes
Exemple:
Colonne 1 "numéro d'ordre" Colonne 2 "SOCIETE A".... Colonne 3 "Charge 1"..... Colonne 4 "Compte de regroupement 1" Colonne 5 "numéro de compte 1"
ce que je souhaite:
Page 2
Quand je tape SOCIETE A les données des colonnes 3, 4 ET 5 doivent s'imputer dans les bonne colonnes
Nota: je ne me sers jamais des numéros d'ordre puisqu"ils peuvent évoluer en fonction de l'évolution de la liste SOCIETE
je joins un fichier pour explications
Merci d'avance pour votre aide toujours précieuse,
une fois noté "=index(" tu cliques sur l'onglet "Feuil1" et tu sélectionnes le haut de la colonne désirée (le curseur doit prendre la forme d'une flèche vers le bas), ensuite tu continues la formule avec un point virgule.
=INDEX(Tableau1[CHARGES/PRODUIT];EQUIV([@[FOURNISSEUR / CLIENT]];
Que si la société n'existe pas on met ces commentaires ?
( c'est ce qui est fait dans les formules, sinon dans les trois formules remplacer "xxx" par "" )
Bonjour JHA, c'est top
La répartition se fait parfaitement comme je le souhaite, en revanche sur mon fichier de travail réel, comment "taper" la partie de la formule (Tableau1[CHARGES/PRODUIT]? si je tape "=INDEX(" jusque là tout va bien mais comment "mentionner" (Tableau1.. je ne sais même pas faire les crochets!) merci encore
Bonjour Diabolo, JHA,
Une autre approche avec RechercheV :
VB:
=SIERREUR(RECHERCHEV(Tableau1[[#Cette ligne];[FOURNISSEURS/CLIENTS]];Tableau2[[FOURNISSEUR / CLIENT]:[NUMERO DE COMPTE]];2;FAUX);"REDEVANCES")
=SIERREUR(RECHERCHEV(Tableau1[[#Cette ligne];[FOURNISSEURS/CLIENTS]];Tableau2[[FOURNISSEUR / CLIENT]:[NUMERO DE COMPTE]];19;FAUX);"PRODUIT DES ACTIVITES ANNEXES")
=SIERREUR(RECHERCHEV(Tableau1[[#Cette ligne];[FOURNISSEURS/CLIENTS]];Tableau2[[FOURNISSEUR / CLIENT]:[NUMERO DE COMPTE]];20;FAUX);708000)
Que signifie ceci :
Que si la société n'existe pas on met ces commentaires ?
( c'est ce qui est fait dans les formules, sinon dans les trois formules remplacer "xxx" par "" )
une fois noté "=index(" tu cliques sur l'onglet "Feuil1" et tu sélectionnes le haut de la colonne désirée (le curseur doit prendre la forme d'une flèche vers le bas), ensuite tu continues la formule avec un point virgule.
=INDEX(Tableau1[CHARGES/PRODUIT];EQUIV([@[FOURNISSEUR / CLIENT]];
Oups !
Mais ça ne change rien à la structure des formules.
Dans Feuil2 :
VB:
Col E : =RECHERCHEV(Tableau2[[#Cette ligne];[FOURNISSEUR / CLIENT]];Tableau1[[FOURNISSEURS/CLIENTS]:[COMPTE]];2;FAUX)
Col V : =RECHERCHEV(Tableau2[[#Cette ligne];[FOURNISSEUR / CLIENT]];Tableau1[[FOURNISSEURS/CLIENTS]:[COMPTE]];3;FAUX)
Col W : ==RECHERCHEV(Tableau2[[#Cette ligne];[FOURNISSEUR / CLIENT]];Tableau1[[FOURNISSEURS/CLIENTS]:[COMPTE]];4;FAUX)
pourquoi employer recherchev ?
il y a une nouvelle instruction qui la remplace avantageusement...
recherchex (je ne la connais que sous son bom anglais XLOOKUP, attention en francais les ";" sont a remplacer par des ",")
La fonction permets d'augmenter la vitesse (sur table trié) , de donner un message si non trouvé,...
Ce que je préfère c'est que la fonction recherche sur le nom de colonne... donc on peut changer l'ordre des colonnes.
VB:
=XLOOKUP([@[FOURNISSEURS/CLIENTS]];Tableau2[FOURNISSEUR / CLIENT];Tableau2[CHARGE / PRODUIT];"REDEVANCES";0;1)
=XLOOKUP([@[FOURNISSEURS/CLIENTS]];Tableau2[FOURNISSEUR / CLIENT];Tableau2[REGROUPEMENT];"PRODUIT DES ACTIVITES ANNEXES";0,1)
=XLOOKUP([@[FOURNISSEURS/CLIENTS]];Tableau2[FOURNISSEUR / CLIENT];Tableau2[NUMERO DE COMPTE];708000;0,1)
Oups !
Mais ça ne change rien à la structure des formules.
Dans Feuil2 :
VB:
Col E : =RECHERCHEV(Tableau2[[#Cette ligne];[FOURNISSEUR / CLIENT]];Tableau1[[FOURNISSEURS/CLIENTS]:[COMPTE]];2;FAUX)
Col V : =RECHERCHEV(Tableau2[[#Cette ligne];[FOURNISSEUR / CLIENT]];Tableau1[[FOURNISSEURS/CLIENTS]:[COMPTE]];3;FAUX)
Col W : ==RECHERCHEV(Tableau2[[#Cette ligne];[FOURNISSEUR / CLIENT]];Tableau1[[FOURNISSEURS/CLIENTS]:[COMPTE]];4;FAUX)
une fois noté "=index(" tu cliques sur l'onglet "Feuil1" et tu sélectionnes le haut de la colonne désirée (le curseur doit prendre la forme d'une flèche vers le bas), ensuite tu continues la formule avec un point virgule.
=INDEX(Tableau1[CHARGES/PRODUIT];EQUIV([@[FOURNISSEUR / CLIENT]];