Bonjour,

cela fait deux heures que je cherche à sélectionner la feuille deux positions après une feuille déterminée dans une procédure.

J'ai créer un complément xlam.

De ce fait je ne peux pas sélectionner mes feuilles par leur nom (enfin je n'y arrive pas). donc j'utilise sh.next et sh.previous.

Ce code permet d'actualiser les données d'une feuille nommé "client" (une feuille 1 position après la feuille "acceuil")

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
If Sh.Name = "acceuil" Then
 
 
Dim derlign As Integer
derlign = Sh.Previous.Range("A" & Rows.Count).End(xlUp).Row + 100
 
Dim I As Integer
 
For I = 1 To derlign + 2
 
    If Sh.Range("y1").Value = Sh.Previous.Cells(I, 1) Then 'c'est la valeur sur y1 qui va être cherchée dans la colonne A de la feuille précédente
 
        Sh.Next.Range("d7") = Sh.Previous.Cells(I, 2) 'valeur colonne deux avec le même nom que y1 en colonne A 
        Sh.Next.Range("d8") = Sh.Previous.Cells(I, 3)
        Sh.Next.Range("d9") = Sh.Previous.Cells(I, 4)
        Sh.Next.Range("d10") = Sh.Previous.Cells(I, 5)
        Sh.Next.Range("d11") = Sh.Previous.Cells(I, 6)
 
...
je souhaiterais actualiser la feuille "équipement" (deux feuilles après acceuil) avec la feuille source (sh.previous)
j'ai essayé sh.name ("equipement), sh.count(sh+2), sh.next+1... sans succès

je n'arrive pas à viser la feuille (qui se situe deux feuilles après acceuil)

ex:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
For I = 1 To derlign
 
    If Sh.Range("y1").Value = Sh.Previous.Cells(I, 1) Then
 
        Sh.Name("equipement").Range("a2") = "client depuis le " & Sh.Previous.Cells(I, 21)
 
 
        Sh.Name("equipement").Range("e13") = Sh.Previous.Cells(I, 57)
        Sh.Name("equipement").Range("e14") = Sh.Previous.Cells(I, 61)
        Sh.Name("equipement").Range("e15") = Sh.Previous.Cells(I, 16)
        Sh.Name("equipement").Range("e16") = Sh.Previous.Cells(I, 17)
merci pour votre aide,