Generation tableau source depuis plusieurs classeurs
Bonjour,
Je souhaite créer un macro afin d'auto remplir 2 tableaux contenant des valeurs sources de positions en integer
Cependant, j'effectue les calculs a implémenter sur 19 classeurs différents
Les calculs concernent deux axes, x et y
Le premier tableau doit lister les valeurs de x par rapport a chaque y le croisant sur la grille
Le deuxieme gère les y
n'étant pas fortiche avec le code macro, je ne sais pas par ou commencer...
merci d'avance pour vos conseils
Thomas
Bonjour et bienvenue sur le forum
Si tu ne joins pas de fichier en donnant un exemple de ce que tu veux obtenir, ils sera difficile de te proposer quelque chose...
Bye !
Bonjour,
Désolé je me suis mal expliqué. En attachement les screen shot de ce que j'essaie de faire.
En gros je remplis une vingtaine de feuille sources et tache de monter une recopie automatique dans le tableau cible.
Il y a deux tableaux cibles, un de type x(x) y(x) déterminant des valeurs réelles de x en rapport a un y et le deuxième de y par rapport a un x
les screen shots en attachement des tables
Voici ou j'en suis, en récupérant des bouts de code de part et d'autre et en adaptant.
Malheureusement pour l'instant rien ne se passe, j'essaye de modifier les commandes mais ne maitrisant pas vraiment je bloque un peu...
Sub test()
Dim ferack1 As Worksheet
Dim fetable As Worksheet
Dim PlgSource As Range
Dim PlgDest As Range
Dim Cel As Range
Dim Ligne As Long
'défini les feuilles
Set ferack1 = Worksheets("rack1") 'peut etre tous les mettre la pour reduire la taille macro si possible
Set fetable = Worksheets("table")
'défini les plages
With ferack1
Set PlgSource = .Range(.Cells("25,4"), .Cells(.Rows.Count, 1).End(xlUp)) 'plage recherche cell ID dans fe source
End With
With fetable
Set PlgDest = .Range(.Cells("2,1"), .Cells(.Rows.Count, 1).End(xlUp)) 'plage recherche cell ID dans fe dest
End With
'parcour la plage (en colonne A) de la feuille de destination
For Each Cel In PlgDest
'gestion de l'erreur de la valeur non trouvé
On Error Resume Next
Ligne = Application.WorksheetFunction.Match(Cel.Value, PlgSource, 0) + 2 'rajoute 2 car départ de plage en ligne 3 '1 pour moi
'si pas d'erreur, récupère les valeurs en colonnes E et les inscrit en colonne D
If Err.Number = 0 Then
Cel.Offset(, 3).Value = ferack1.Cells(Ligne, 1).Offset(, 1).Value
End If
Next Cel
End Sub
Merci d'avance pour vos eclairsissements
Thom
Bonjour,
J'ai rajouté le code que je suis parvenu a établir pour commentaires/aide...
Merci d'avance
Thomas