Bonjour,

Je suis tout nouveau sur le site et vous remercie d'avance pour vos réponses.
Actuellement en stage, je dois réaliser une macro excel permettant de mettre en forme des données importées "brutes".
Note: Chaque onglet comporte des données semblables (les colonnes sont les mêmes, en revenche, le nombre de ligne peut varier)
J'ai donc mis les mains dans le VBA et le découvre doucement, j'ai créé un programme dans l'optique de répéter les actions suivantes pour chaque feuille du classeur:

1 - Création d'un tableau s'adaptant au nombre de lignes (ca fonctionne), chaque tableau porte le nom de la feuille de calcul correspondante. => J'arrive à le faire répéter pour chaque feuille
2 - Opérations entre les différentes colonnes (exemple, je veux que dans le colonne 4, on y trouve le produit de la colonne 2 et 3) => Ca fonctionne mais je n'arrive pas à répéter cette opération à cause du nom des tableaux...

Mes tableaux ont donc pour nom "nomdefeuille1", "nomdefeuille2" etc... ActiveSheet.Name renvois normalement au nom de la feuille (et donc dans mon cas au nom de chaque tableau) mais je n'arrive pas à l'exploiter => J'ai mis des "?????" à la fin de mon programme pour vous demander que mettre ?

Pourriez vous s'il vous plait m'aider pour pouvoir réussir à boucler mon étape 2 sur tous les onglets, je suis sur que c'est un détail mais pardonnez moi, je débute... ^^

Je reste à votre disposition, vous remercie d'avance et vous fournit mon script

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Sub Boucle_de_répétition()
Dim WS_Count As Integer
Dim I As Integer
' Set WS_Count equal to the number of worksheets in the active
' workbook.
WS_Count = ActiveWorkbook.Worksheets.Count
' Begin the loop.
For I = 1 To WS_Count
If I < WS_Count Then
Call Creation_de_tableau
Call Operations
ActiveSheet.Next.Select
Else
Call Creation_de_tableau
Call Operations
End If
Next I
End Sub
 
 
Sub Creation_de_tableau()
'Données rangées dans un tableau partant le même nom que celui de la feuille active
'Selection d'une box balayant le domaine utilisé
Range("A1", Range("A1").End(xlToRight)).Select
Range(ActiveCell, ActiveCell.End(xlToLeft)).Select
'Création du tableau à partir de la selection
ActiveSheet.ListObjects.Add(xlSrcRange, , , xlYes).Name = _
ActiveSheet.Name
ActiveSheet.ListObjects(ActiveSheet.Name).TableStyle = "TableStyleLight8"
End Sub
 
 
Sub Operations()
Range("???????[Colonne4]").FormulaR1C1 = "=????????[Colonne2]*????????[Colonne3]"
End Sub