importer des feuilles d'autres classeur pour des donnés

djuju

XLDnaute Nouveau
bonjour,
pour mon tableau de synthese d'audit j'aurais voulus ..
dans le fichier "tableau essai" et la feuille "consultation" en choisissant l'établissement en C12 ou C13 ou C14 ou C15 ou C16 apparaissent dans ce classeur les feuilles "achat" "hygiene" "organisation" et "qualité" du fichier de l'établissement choisi
je vous met le fichier tableau essai et le fichier de l'établissement A en exemple
merci d'avance pour votre aide
 

Pièces jointes

  • TABLEAU essaie.xls
    224.5 KB · Affichages: 45
  • A.xls
    45.5 KB · Affichages: 64
  • A.xls
    45.5 KB · Affichages: 58
  • A.xls
    45.5 KB · Affichages: 57

job75

XLDnaute Barbatruc
Re : importer des feuilles d'autres classeur pour des donnés

Bonjour djuju,

apparament ça n'interresse personne ou ce n'est pas possible ?

Il y a un 3ème cas : vous n'êtes pas clair :

- dans le fichier A.xls les feuilles ne portent pas les noms "achat" "hygiene" "organisation" et "qualité"

- et les listes déroulantes en C12:C16 ne contiennent pas d'établissement A...

Quand on veut des réponses on s'en donne les moyens.

A+

A+
 

djuju

XLDnaute Nouveau
Re : importer des feuilles d'autres classeur pour des donnés

oui c'est vrai que j'ai fait quelques erreurs
voila qui j'espere est corrigé et que ca va inciter les gens a regarder
merci
 

Pièces jointes

  • A(1).xls
    51 KB · Affichages: 117
  • A(1).xls
    51 KB · Affichages: 116
  • A(1).xls
    51 KB · Affichages: 109
  • TABLEAU%20essaie(1).xls
    201.5 KB · Affichages: 40

job75

XLDnaute Barbatruc
Re : importer des feuilles d'autres classeur pour des donnés

Re,

Cela dit sans trop faire fonctionner sa boule de cristal on peut arriver à cette macro :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim liste, wb As Workbook, i As Integer, s As Object
Application.ScreenUpdating = False
Application.DisplayAlerts = False
On Error Resume Next
liste = Array("achat", "hygiene", "organisation", "qualité")
Set wb = Workbooks.Open(ThisWorkbook.Path & "\" & Target)
For i = UBound(liste) To 0 Step -1
  ThisWorkbook.Sheets(liste(i)).Delete
  For Each s In wb.Sheets
    If s.Name Like "*" & liste(i) Then
      s.Visible = True 'si la feuille est masquée
      s.Copy After:=Me
      If Not s Is Nothing Then ActiveSheet.Name = liste(i)
      Exit For
    End If
  Next
Next
wb.Close
Me.Select
End Sub
Dans la liste de validation en C12 cliquer sur "G".

Les 2 fichiers joints sont à placer dans le même répertoire, par exemple le bureau.

Edit : manquait le test de sécurité If Not s Is Nothing Then

A+
 

Pièces jointes

  • TABLEAU essaie(1).xls
    204.5 KB · Affichages: 45
  • G.xls
    49.5 KB · Affichages: 39
Dernière édition:

djuju

XLDnaute Nouveau
Re : importer des feuilles d'autres classeur pour des donnés

oui c'est ca
c'etais peut etre pas trop difficile pour vous
mais moi le vba connait vraiment pas beaucoup pour pas dire presque rien
je me debrouille avec des formule simple
mais on ma demande de faire un tableau compliquer pour moi
donc heureusement que j'ai votre aide
merci je vais voir si je peut finaliser mon projet car il y a encore quelque erreur
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 977
dernier inscrit
Hermet