Création d'une Base de Données

  • Initiateur de la discussion Initiateur de la discussion jbdubreuil
  • Date de début Date de début

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 !

jbdubreuil

XLDnaute Occasionnel
Bonjour à tous,

Mon sujet n'attire pas les foules et je vous comprends 🙂
Je repose donc le probleme differement et plus simplement.

J'ai deux onglets avec deux bases de données.
Je souhaite tout simplement "fusionner" ces deux Base de Données "pipo" et "toto" pour n'en faire plus qu'une dans un nouvel onglet "BDD"

http://cjoint.com/?iji3BI3XOw

Je peux me debrouiller manuellement.
Mais avec l'aide d'une macro, ca m'aiderait qd meme davantage.
(dans mon cas reel, j'ai plus de 20 onglets et 1.000 lignes...)

Ca vous parait faisable?
Merci par avance

jb
 
Re : Création d'une Base de Données

Avec un onglet avec liste des noms d'onglets nommé Ref


Code:
Sub Créer_BD()

Application.ScreenUpdating = False  'ne pas voir ce qui se passe à l'écran, diminue besoin mémoire

For lgn = 1 To xx 'pour boucler sur les lignes 1 à xx

Sheets("Ref").Select   'on se place sur la feuille de référence
indic = Cells(lgn, 1).Value    'on variabilise, indic = cellule ligne de la boucle, colonne 1

Sheets(indic).select
range(" -- : --").select    ' ou avec xl(down) si nb de lignes variable
selection.copy

Sheets("BD").Select   ''on se place sur la feuille où se trouve la BD
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False   ' on colle

Next lgn   ' on continue sur 2nd, 3èm.. indicateur (boucle)

Application.ScreenUpdating = True

End Sub
 
Re : Création d'une Base de Données

Bonjour

jbdubreuil, je voudrais attirer ton attention, sur un point important, nous sommes ici en tant que bénévol, pour la plus part d'entre nous, nous passons nos loisirs sur ce forum.

La première des choses à faire, quand tu arrives sur un forum, c'est de lire la charte qui est très claire. Ne pas multiplier les fils pour un même sujet, et faire une recherche sur le forum.

Code:
Sub[B] SujetAttirePasLesFoules[/B]()
Dim I As Byte
Dim vPos As Integer
Dim vLong As Integer
For I = 1 To 2
   vPos = Sheets(3).Range("A65536").End(xlUp)(2).Row
   vLong = Sheets(I).Range("A65536").End(xlUp).Row - 5
   Sheets(3).Range("A" & vPos & ":F" & vLong + vPos).Value = Sheets(I).Range("A5:F" & vLong + 5).Value
Next I
End Sub
J'espère que tu vas pourvoir adapter ce code au fichier d'origine

@+Jean-Marie
 
Re : Création d'une Base de Données

Merci Nat pour ton aide,

J'ai repris ton code que j'essaye de mettre à ma sauce.
Mais pour le moment, ca ne marche pas...

Jusqu'à present, je n'utilisais qu'une macro "refresh".
J'ai l'impression que c'est assez similaire...
Mais si tu peux jeter un coup d'oeil au fichier ci joint,
ca pourrait vraiment m'aider 🙂

Merci,

jb

http://cjoint.com/?ijjMNtI4Bx
 
Re : Création d'une Base de Données

Re...

Dans le code que je viens de mettre en ligne, il copie les données de la première feuille et de la deuxième sans se soucier des noms des feuilles. Dans le fichier remis dans ton 2ème post, tu as changé l'ordre des feuilles, il faudra les replacer.

@+Jean-Marie
 
- 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

R
Réponses
2
Affichages
1 K
Romane.
R
A
Réponses
2
Affichages
1 K
Axelle48
A
J
Réponses
6
Affichages
1 K
jean_jack
J
Retour