Visualiser une base de données

bcharef

XLDnaute Accro
Bonjour à toutes et à tous.

J'ai une feuille nommée "BDD" qui contient des tableaux mensuel, soit:janvier, février mars et avril.

L'objectif recherché est de visualiser les dits tableaux sur une autre feuille nommée "visualisé" par mois et si c'est possible avec le cumul du mois.

Un exemple du présent sujet ci joint.

Comptant sur votre aimable collaboration, veuillez agréer mes salutations distinguées.

Bcharef.
 

Pièces jointes

  • VisuBDD.xls
    20 KB · Affichages: 81

mromain

XLDnaute Barbatruc
Re : Visualiser une base de données

bonjour bcharef,

voici un code à mettre sur ta feuille "Visualisé"
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Target.Address = "$B$1" Then Exit Sub
Dim cellFind As Range
Set cellFind = ThisWorkbook.Sheets("BDD").Range("B:H").Find(Target.Text, , xlValues, xlWhole)
If cellFind Is Nothing Then Exit Sub
ThisWorkbook.Sheets("BDD").Range(cellFind.Offset(4, 0), cellFind.Offset(11, 6)).Copy ThisWorkbook.Sheets("Visualisé").Range("A6")
End Sub

par contre, il faut faire attention aux accent, dans l'exemple que tu as fournis, "fevrier" de ta liste de validation est différent de "Février" de ta feuille BDD.

a+
 

bcharef

XLDnaute Accro
Re : Visualiser une base de données

Bonjour mromain,
Bonjour à toutes et à tous.

Je vous remercie infiniment pour votre réponse, mais mon souhait d'avoir une solution par formule, car je suis un ignare en matiére de VBA.

A vous lire et bon courage.

Cordialement.

Edit : La mise en application du code ne fonctionne pas.

Bcharef.
 
Dernière édition:

kjin

XLDnaute Barbatruc
Re : Visualiser une base de données

Bonjour,
Avec la fonction DECALER, si la mise en page est toujours identique

Edit : Attention février porte un accent !
A+
kjin
 

Pièces jointes

  • bcharef.xls
    22.5 KB · Affichages: 91
  • bcharef.xls
    22.5 KB · Affichages: 88
  • bcharef.xls
    22.5 KB · Affichages: 87

bcharef

XLDnaute Accro
Re : Visualiser une base de données

Re bonjour mromain,
Bonjour kjin,
Re bonjour à toutes et à tous.

kjin, j'ai le grand plaisir de vous croiser sur ce fil d'une part et de vous remercier de l'aide que vous veniez de m'apporter d'autre part.

Est-il possible d'afficher le cumul en même temps?

Par exemple pour le mois de février, il m'affiche les résultats du mois d'une part et le cumul des deux mois d'autre part.

A vous lire et bon courage.

Cordialement

Bcharef
 
Dernière édition:

kjin

XLDnaute Barbatruc
Re : Visualiser une base de données

Re,
En gardant le même principe mais pour avoir la même formule dans toutes les cellules
en B6
Code:
=DECALER(BDD!$A$1;LIGNE()-1+$D$1*14;COLONNE();;)
Puis tire la formule vers le bas et vers la droite
A+
kjin
 

bcharef

XLDnaute Accro
Re : Visualiser une base de données

Re bonjour mromain,kjin,
Re bonjour à toutes et à tous.

Je vous remercie encore une fois pour la formule, en gardant toujours la même structure , est-il possible de réaliser le même travail sur une même feuille si c'est possible de visualiser les résultats et au choix par point de vente.

Une fois que je rentre chez moi, j'appliquerai la formule et je vous tiendrez au courant de son résultat, malgré que j'en suis sûr qu'elle va me donner le bon résultat.

Je vous remercie d'avance pour le temps, que vous me consacreriez, ainsi de votre aide.

Cordialement.

Bcharef
 

bcharef

XLDnaute Accro
Re : Visualiser une base de données

Bonsoir mromain, kjin,
Bonsoir à toutes et à tous.


L'application de la dernière formule, que vous m'aviez proposée affiche le même résultat que la première.

Mon souci est de trouver une solution (formule) qui me permettra de visualiser les résultats par mois et cumul par l'intermédiaire d'une option de choix de visualisation (soit par mois ou cumul).

Comptant sur votre aimable collaboration, veuillez agréer mes salutations distinguées.

Bcharef
 

bcharef

XLDnaute Accro
Re : Visualiser une base de données

Bonjour mromain,kjin & Monique,
Bonjour à toutes et à tous.

Monique, c'est avec grand plaisir de vous croiser sur ce fil d'une part et je trouve votre solution génial avec la MeFC, dont je vous remercie infiniment.

Je me retrouve devant un autre problème, qui doit me permettre de visualiser mes résultats d'une période à une autre.

En attente de votre aide, veuiller agréer mes salutations distinguées.

BCharef
 

bcharef

XLDnaute Accro
Re : Visualiser une base de données

Re bonjour mromain,kjin & Monique,
Re bonjour à toutes et à tous.

J'ai le grand plaisir de vous remercier de l'aide que vous m'aviez apporté, ainsi pour le temps que vous m'aviez consacré.

Comme, il est utile de vous informer que je suis entraine de procéder à l'application de vos formules sur des tableaux au nombre de 37 lignes au lieu de 10 lignes du présent exemple, dont je te trouve des difficultés pour l'affichage du cumul.

Je vous remercie encore une fois pour l'aide.

BCharef
 

Monique

Nous a quitté
Repose en paix
Re : Visualiser une base de données

Re,

Les 37 dont tu parles, c'est 35 produits + les 2 lignes de titre ?

Dans la formule qui définit la plage nommée "ZoneChx"
(Insertion - Nom - Définir)
=DECALER(BDD!$B$2;EQUIV(ChxB;Col;0)-2;;(EQUIV(Chx;mois;0)-EQUIV(ChxB;mois;0)+1)*14)
tu remplaces 14 par 41
=DECALER(BDD!$B$2;EQUIV(ChxB;Col;0)-2;;(EQUIV(Chx;mois;0)-EQUIV(ChxB;mois;0)+1)*41)

14, c'était la hauteur totale de chaque tableau, c'à dire
le nom du mois + 1 ligne vide + 2 lignes de titre + 8 produits + intervalle de 2 lignes avant le mois suivant

41, c'est
le nom du mois + 1 ligne vide + 2 lignes de titre + 35 produits + intervalle de 2 lignes avant le mois suivant
 

bcharef

XLDnaute Accro
Re : Visualiser une base de données

Re bonsoir mromain,kjin & Monique,
Re bonsoir à toutes et à tous.

Le problème posé relatif au nombre de lignes, ne me permettait pas de visualiser les deux tableaux sur un seul champ, j'ai du mal exposé le problème.

Mais l'insertion de la fonction SI(), m'a permis de visualiser les résultats sur un et un seul tableau.

Code:
=SI($D$1="Sans cumul";SI($A$3="";"";DECALER(BDD!D8;EQUIV(Chx;Col;0)-3;;;));SI($A9="";"";SOMME.SI(ZoneChx;$A9;DECALER(ZoneChx;;COLONNES($B9:C9)))))

Le seul problème qui demeure ,dont je me suis rendu compte, que les mois portés sur le fichier de travail sont notés sous la forme de Mois de janvier au lieu de janvier d'où difficulté de l'application de la formule, ceci m'oblige à éliminer Mois de.

Une question qui me deumeure ambigu soulignée en rouge dans la formule suivante:

Code:
=DECALER(BDD!$B$2;EQUIV(ChxB;Col;0)-2;;(EQUIV(Chx;mois;0)[COLOR=Red]-EQUIV(ChxB;mois;0)+1)*[/COLOR][COLOR=Red]14)[/COLOR]
Je vous remercie encore une niéme fois pour les efforts que vous m'aviez accordés.

Cordialement.

Bcharef.
 
Dernière édition:

Monique

Nous a quitté
Repose en paix
Re : Visualiser une base de données

Bonjour,

Tu peux garder "Mois de " (ou Mois d') dans les titres de l'onglet BDD
Il faut modifier la liste de validation
et utiliser Substitue() dans la formule qui donne le titre du tableau de la feuille "Visualisé"
=SI(OU(A3="";NB.SI(D1;"avec"&"*")=0;ChxB="");"";SI(EQUIV(ChxB;mois;0)>=EQUIV(Chx;mois;0);"";SUBSTITUE(SUBSTITUE(SUBSTITUE("Cumul "&ChxB&"-"&Chx;"Mois ";"");"de ";"");"d'";"")))

Tu as changé cette formule mais tu pourras adapter
Sans condition, c'est ça :
SUBSTITUE(SUBSTITUE(SUBSTITUE("Cumul "&ChxB&"-"&Chx;"Mois ";"");"de ";"");"d'";"")

La formule dont tu parles
DECALER(BDD!$B$2;Nb de lignes; 0 colonne; hauteur par formule; Largeur 1 donc omis)

Nb de lignes : EQUIV(ChxB;Col;0)-2 : c'est la position, dans la colonne B, du mois choisi par la liste de validation ChxB (-2 parce que le 1er titre est en ligne 2)

Hauteur : (EQUIV(Chx;mois;0)-EQUIV(ChxB;mois;0)+1)*14
EQUIV(Chx;mois;0) c'est la position, dans la liste nommée "Mois", du mois choisi dans la cellule "Chx"
EQUIV(ChxB;mois;0) c'est la même chose mais pour le mois choisi en ChxB
14, c'est la hauteur de chaque tableau (mais tu n'as plus 14, maintenant, je crois)

Si on prend avril et février : (4-2-1)*14 --> 42
c'est une une plage d'une hauteur de 42 lignes qui est prise en compte
et elle démarre à la ligne EQUIV(ChxB;Col;0)-2

Je suis partie de la plage "Mois" pour ne pas avoir 3 Equiv() calculant sur une colonne entière,
mais c'est un peu tordu, ce système
 

Discussions similaires

Réponses
0
Affichages
450
Haut Bas