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

XL 2016 Remplir une BDD à partir des feuilles Excel du meme classeur

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

!xmusaton

XLDnaute Nouveau
Bonjour,

J'ai besoin de votre aide précieuse svp!

Je souhaite remplir une base de donnée à partir de plusieurs feuilles du même classeur, qui ont toutes la même forme.
La première partie du tableau "BD" se remplit via un bouton VBA "actualiser BD"
Les valeurs à reprendre dans le tableau sont celles colorées en rose dans chaque feuille.
-Colonnes A et B du tableau "BD" reprennent les cellules B22 et B23 "non vides" de chaque feuille, en copiant ça sur 7 lignes.
-Colonne C ne rien faire
-Colonne D reprend les équipes de la colonne B8:B14 de chaque feuille (7 équipes), si la cellule B22 de la feuille est "non vide"
-Colonnes E F G H I J K reprennent les dates "non vides" de la ligne 3 de chaque feuille, correspondantes aux périodes X0 X1 X2 X3 X4 X5 X6, en copiant ça sur 7 lignes.
également uniquement si la cellule B22 de la feuille est "non vide".

Important:
-Toute modification du contenu des feuilles doit être prise en compte en actualisant la BD.
-Cela ne s'applique qu'aux feuilles dont les initiales sont: "AB", "AC" ou "AD". (nom de la feuille c'est le même que la cellule B22)

J'espère que c'est clair pour vous.
N'hésitez pas si vous avez besoin de plus d'explications.

Merci par avance.

Je vous joins le fichier.

PS: le calendrier à droite dans la feuille "BD" je vais le remplir avec des formules, sans passer par VBA.
 

Pièces jointes

Bonjour Sousou,

Super merci beaucoup!! c'est exactement ce que je voulais.

Serait-il possible de mettre une condition que l'actualisation du tableau ne se fait que pour les feuilles commençant par : "AB0" , "AC0" ou "AD0"

If Left(f.Name, 1) = "A" Then n'est pas suffisante car y'a la possibilité d'avoir des feuille qui commencent par A...mais pas à reprendre dans le tableau.


Merci encore une fois pour ton aide.
 
Salut sousou,

Je reviens vers toi par rapport à ce fichier, en fait, j'aimerais mettre une formule dans la colonne C là ou rien ne se copie.
Simplement, avec la macro la formule s'efface.

Comment faire ?

Merci par avance pour ton aide.
 
bonjour.
L'appli reconstruit la base de données à partir des autres feuilles, donc on raz la bd au départ. il est donc normal que la colonne c Soit elle aussi raz
Peux-tu être plus précis sur ta demande.
1/La formule doit être mise après la mise à jour, et si cela est, quelle formule?
2/ Sinon la formule se trouve t'elle dans les feuilles permettant de la construire?
 
Salut Sousou,
Merci pour ta réponse, non la formule ne se trouve pas dans les feuilles.
C'est bêtement la formule qui affiche les 3 premières lettres de gauche de chaque cellule de la première colonne (ID).
Y'a moyen de l'intégrer dans le programme vba
 
Bonjour
Ajoute dans le code la ligne en gras.

Sub cop(f, s1, s2, d1, d2, lg)
With Sheets("BD").Rows(lg)
For n = 1 To nequipe
f.Range(s1).Copy .Cells(n, d1)
f.Range(s2).Copy .Cells(n, d2)
f.Range("b8").Offset(n - 1, 0).Copy .Cells(n, d2 + 2)
.Cells(n, d2 + 1) = Left(f.Range(s1), 3)
For x = 0 To 6
Set mx = f.Rows(1).Find("X" & x)
madate = mx.Offset(2, 0)
.Cells(n, d2 + 2 + x + 1) = madate
Next

Next
End With
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

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