report de donnees

naj

XLDnaute Junior
Bonjour!

je voudrais sur une feuille 1 associée des valeurs et que sur la feuille 2 ces associations soient automatiquement recrée.
c'est a dire:

Feuille 1:
colonne A colonne B
bonjour aurevoir
salut bye
bleu rouge
vert jaune

ensuite dans ma feuille 2, je retrouve certaines valeurs de la colonne A de la feuille 1:

Feuille 2:
colonne A colonne B
bonjour
bleu


et je veux obtenir automatiquement (que la colonne B se remplissent en fonction des donnees entrees precedemment):

Feuille 2:
colonne A colonne B
bonjour aurevoir
bleu rouge



je sais pas si je suis tres tres claire.....

merci d'y jeter un oeil...
 

Pièces jointes

  • exemplepourforum.xls
    13.5 KB · Affichages: 59
  • exemplepourforum.xls
    13.5 KB · Affichages: 66
  • exemplepourforum.xls
    13.5 KB · Affichages: 63

pierrejean

XLDnaute Barbatruc
Re : report de donnees

bonjour naj

vois si cela te convient: une macro declenchée a l'activation de la feuille tableau

selectionne la feuille donnees puis revient sur la feuille tableau
 

Pièces jointes

  • exemplepourforum.xls
    23 KB · Affichages: 61
  • exemplepourforum.xls
    23 KB · Affichages: 68
  • exemplepourforum.xls
    23 KB · Affichages: 64

naj

XLDnaute Junior
Re : report de donnees

je vous remercie pour vos reponses rapides!

la formule n'est pas efficace dans ce cas, car mon chef doit pouvoir s'en servir à plusieurs reprises pour différents tableaux (qui ont le meme format).
Il souhaite donc une macro que je rattache à un bouton.

Je vais tester d'adapter la macro à mon fichier et voir si ca marche.
je vous tiens au courant après!!
 

naj

XLDnaute Junior
Re : report de donnees

j'arrive pas à l'adapter.
reellement, ma fiche "tableau" se nomme "Résultat" et ma fiche "donnees": "gestionnaires a garder+service".
Dans la fiche "gestionnaires a garder+service" les valeurs se trouves dans les colonnes A et B à partir de la deuxieme ligne.
Dans la fiche "Résultat", les données à prendre en compte sont en colonne G et les données doivent etre reportés dans la colonne K. A partir de la deuxieme ligne aussi (la premiere ligne contenant les titres des colonnes).

J'ai deja une macro créée sur ce fichier qui s'active lorsque j'appuie sur un bouton.
je voulais inserer cette macro supplementaires au bouton existant deja.
La macro rattachée à mon bouton permet un tri dans les donnees. Il me permet de ne garder que quelques lignes d'un tableau de base. Une fois ces lignes garder, je veux que mes données se reportent en fonction des associations.

c'est possible de l'insérer à ma macro?
 

naj

XLDnaute Junior
Re : report de donnees

la macro:

Option Explicit

Sub Bon_Gestionnaires()
Dim NbBonGest As Integer, i As Integer, j As Integer
Dim BonGest() As String
Dim nblignes As Integer
Dim Izgood As Boolean
Dim nbCouple As Integer
Dim Couple As String

For i = 1 To ActiveWorkbook.Sheets.Count
Application.DisplayAlerts = False ' désactive l'affichage de l'alerte pout confirmation effacement
If Sheets(i).Name = "Résultat" Then Sheets(i).Delete ' efface la feuille "Résultat" si elle existe
Application.DisplayAlerts = True
Next i

NbBonGest = Sheets(2).Range("A65000").End(xlUp).Row - 1 'nombre de "bons gestionnaires" de la liste de la feuille 2
nbCouple = Sheets(3).Range("A65000").End(xlUp).Row - 1 'nombre de "couples-à-colorer" de la liste de la feuille 2

Sheets("export corbeille").Copy After:=Sheets(ActiveWorkbook.Sheets.Count) 'copie la feuille de données en dernier

ReDim BonGest(1 To NbBonGest) ' redimensionnement du tableaude variables BonGest
For i = 1 To NbBonGest
BonGest(i) = Sheets(2).Range("A" & i + 1).Value 'place les données de la liste dans le tableau
Next i

nblignes = Sheets(1).Range("G65000").End(xlUp).Row 'nombre de ligne de la feuille 1

With Sheets(ActiveWorkbook.Sheets.Count)
.Name = "Résultat"
For i = nblignes To 2 Step -1 'de la dernière ligne à la 2ème de la feuille 1
Izgood = False ' la variable Izgood est faux
For j = 1 To NbBonGest
If .Range("G" & i).Value = BonGest(j) Then Izgood = True ' si le gestionnaire est dans la bonne liste Izgood est vrai
Next j
If Not Izgood Then .Rows(i).Delete 'si le gestionaire n'est pas dans la liste la ligne est effacée
Next i
nblignes = .Range("G65000").End(xlUp).Row 'recalcul du nombre de ligne restante de la feuille "Résultat"
For i = 2 To nblignes
' si le contenu de Di+Ei est égal au(x) couple(s) de valeur on colore la ligne dans la couleur indiquée
For j = 1 To nbCouple
Couple = Sheets(3).Range("A" & j + 1).Text

If .Range("G" & i).Text = Couple Then Range("J" & i).Value = "1"
Next j
Next i

.Copy
End With
End Sub
 

naj

XLDnaute Junior
Re : report de donnees

il n'y a rien à mettre avant "tablo"?
ca me note "l'indice n'appartient pas a a selection"

et "tablo = Sheets("gestionnaires a garder+service").Range("A2:B" & _
Sheets("gestionnaires a garder+service").Range("B65536").End(xlUp).Row)"

est surligné en jaune dans le code
 

naj

XLDnaute Junior
Re : report de donnees

j'ai toujours le meme probleme! j'ai fait des copier coller sur les noms mais ils buguent toujours a cet endroit.
mais ca a marché une fois je crois... je comprends pas.. j'ai rien touché entre temps.
et là quoi que je fasse...


j'ai insérer la macro entre le "end with" et le "end sub" , c'est bien la qu'il faut la mettre, non?
 

naj

XLDnaute Junior
Re : report de donnees

en fait peut etre que j'ai une raison...

mes resultat sont copier dans l'onglet resultat, mais je crée aussi un nouveau classeur avec une feuille résultat qui reprend les donnees de la feuille.
Si la macro s'active apres la creation de la feuille, elle ne peut pas retrouver la feuille nommée "gestionnaires..." car elle n'existe pas dans ce nouveau classeur...

je pense a ca car quand la macro se bloc et que le debogueur s'ouvre: il suffit que je ferme la fenetre du nouveau classeur afin de me retrouver sur l'ancien classeur et de lancer le pas a pas pour que ca marche...
 

Discussions similaires

Réponses
5
Affichages
143

Statistiques des forums

Discussions
312 232
Messages
2 086 461
Membres
103 219
dernier inscrit
Akyrah