Bonjour
je souhaiterais traduire la fonction INDIRECT en code VBA.
Dans la colonne A3:A de la feuille nommée Liste je récupère le nom de toutes les autres feuilles (environ 300)
La ligne (plage) B2:BB contient la référence des cellules à renvoyer.
j'ai la fonction =INDIRECT("'"&$A3&"'!"&B$2) aux intersections colonne-ligne.
lors de nouvelles feuilles ou de valeurs à renvoyer il faut glisser la formule d'où les risques d'erreurs
j'ai essayé ce code je bloque sur la deuxième partie
merci
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 Sub liste() 'Récupération du nom des feuilles dans la colonne A Dim ws As Worksheet Set ws = Worksheets("Liste") Dim nb As Byte nb = Worksheets.Count - 1 Dim last_row As Long last_row = ws.Range("A65000").End(xlUp).Row ws.Range("A2:A" & last_row).Clear For i = 9 To nb On Error GoTo 0 ws.Cells(i - 6, 1) = Worksheets(i + 1).Name Next i 'Récupération des valeurs. comme INDIRECT For j = 2 To 40 ws.Cells(j, 3).Value = sheets("'"&a3&"'"!"&a12"").value Next End Sub
Partager