Bonjour à tous,

J'ai dans une feuille nommée "RC30 (1)" dans la colonne A :
- un certain nombre de cases égale à 1 (de A2 à Ai) avec l'indice i
- ensuite un certain nombre de cases égale à 2 (de Ai+1 à Aj) avec l'indice j
- ensuite un certain nombre de cases égale à 3 (de Aj+1 à Ak) avec l'indice k
Par exemple :
A2=1
A3=1
A4=1
A5=1
A6=2
A7=2
A8=2
A9=2
A10=2
A11=3
A12=3
On a donc ici : i=5, j=10, k=12.
Et j'aimerai pouvoir créer une macro pour enregistrer les adresses des cellules A2, Ai, Ai+1, An, An+1 et Am sachant que je ne connais pas les indices i, n et m.
J'aimerai les entrer dans des variables que j'utiliserai plus tard :
adress11=A2
adress12=Ai
adress21=Ai+1
adress22=An
adress31=An+1
adress32=Am

avec :
nb_lignes_1= nombre de lignes de cases égales à 1 (=i-1)
nb_lignes_2= nombre de lignes de cases égales à 2 (=j-i)
nb_lignes_3= nombre de lignes de cases égales à 3 (=k-j)


Comme ça, je pourrai par exemple dans une nouvelle feuille "RC30" copier le nombre de cellules égales à 1 (puis 2 puis 3) et le multiplier par 2. Je m'explique :
Par exemple dans la nouvelle feuille "RC30" on aura :
A2=1
A3=1
A4=1
A5=1
A6=1
A7=1
A8=1
A9=1
A10=2
A11=2
A12=2
A13=2
A14=2
A15=2
A16=2
A17=2
A18=2
A19=2
A20=3
A21=3
A22=3
A23=3

J'ai pensé à écrire ce programme pour l'instant pour la suite.
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
 
'Pour la valeur 1 :
'Dans la feuille "RC30 (1)":
Worksheets("RC30 (1)").Range("adress11:adress12").Select 'sélection des bornes des cases égales à 1
Selection.Copy
'Dans la feuille "RC30" :
Worksheets("RC30").Cells(2,1).Select 'selection de la case A2
ActiveSheet.Paste 'coller les chiffres 1 une première fois
Worksheets("RC30").Cells(2,1).Offset(nb_lignes_1,1).Select 'se décaler de nb_lignes_1 lignes
ActiveSheet.Paste 'coller les chiffres 1 une seconde fois
 
'Pour la valeur 2 :
'Dans la feuille "RC30 (1)":
Worksheets("RC30 (1)").Range("adress21:adress22").Select 'sélection des bornes des cases égales à 2
Selection.Copy
'Dans la feuille "RC30" :
Worksheets("RC30").Cells(2,1).Select 'selection de la case A2
ActiveSheet.Paste 'coller les chiffres 2 une première fois
Worksheets("RC30").Cells(2,1).Offset(2*nb_lignes_1,1).Select
ActiveSheet.Paste 'coller les chiffres 2 une seconde fois
Du coup j'ai vraiment besoin d'aide pour le départ et pour la suite que j'ai écrit un avis serait bien sympa!

Merci beaucoup d'avance!!!^^