Incrémenter .FormulaR1C1 dans Next/For

Résolu
CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 - 20 oct. 2010 à 20:19
CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 - 20 oct. 2010 à 22:42
Bnjoutr,

J'ai le code suivant :
Sub Macro3()
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""","""",RC[-1])"
    Range("C1").Select
    ActiveCell.FormulaR1C1 = "=IF(R[1]C[-2]="""","""",R[1]C[-2])"
    Range("D1").Select
    ActiveCell.FormulaR1C1 = "=IF(R[2]C[-3]="""","""",R[2]C[-3])"
' etc...
End Sub

Je veux le transposer dans une boucle Next/For

Par exemple :

Sub SousListe()
Dim i, k
k = Range("A65536").End(xlUp).Row

' 1ère Cellule
Range("B1").Select

' 1ère Formule
ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""","""",RC[-1])"

'   2ème Cellule
Range("C1").Select

' Boucle pour les suivantes jusqu'à dernière cellule en colonne A
For i = 2 To k
    ActiveCell.FormulaR1C1 = "=IF(R[(i)]C[-(i)]="""","""",R[(i)]C[-(i)])"
    Cells(i + 1 & "1").Select
Next i
End Sub


Evidemment, la syntaxe [(i)] n'est pas valide !!

Mais comment faire ? Je sèche...

Merci pour votre aide indéfectible


Cordialement
Rataxes64
A voir également:

2 réponses

CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 1
20 oct. 2010 à 22:42
Re Re Bonjour,

J'étais loin du compte !!!

Sub SousListe()
Dim i, j, k, l
l = Range("A65536").End(xlUp).Row - 1

' 1ère Cellule
Range("B1").Select

' 1ère Formule
ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""","""",RC[-1])"

'   2ème Cellule
Range("C1").Select
j = 1
' Boucle pour les suivantes jusqu'à dernière cellule en colonne A
For i = 1 To l
    j = 1 + i
    k = j + 2
    ActiveCell.FormulaR1C1 = "=IF(R[" & i & "]C[-" & j & "]="""","""",R[" & i & "]C[-" & j & "])"
    Cells(1, k).Select
Next i
End Sub


Voilà, il y a peut être plus simple, mais cette fois ça marche.

Si cela peut servir à d'autres...

Cordialement
Rataxes64
3
Rejoignez-nous