• Initiateur de la discussion Initiateur de la discussion romika
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

romika

XLDnaute Occasionnel
Bonjour,

Pouvez vous m'aider à "traduire" cette formule...

Je comrends pas les R1C1, RC[10], =_...


Do Until ActiveCell = "STOP"
If ActiveCell.Value <> "STOP" Then ActiveCell.FormulaR1C1 = _
"=IF(RIGHT(LEFT(RC[10],9),1)=""0"",LEFT(RC[10],10),LEFT(RC[10],7))"
Selection.Offset(1, 0).Select
Loop

Merci pour votre aide
 
Re : traduction formule

Bonjour Romika,

Style R1C1 (Row, Column):

références absolues
$A$1 = R1C1

$B$12 = R12C2

références relatives :
RC[10] signifie la cellule sur la même ligne que la formule et 10 colonnes à droite
R[-2]C[5] signifie la cellule 2 lignes au-dessus de la formule et 5 colonnes à droite
 
Re : traduction formule

Bonjour à vous deux

juste une remarque :

Do Until ActiveCell = "STOP"
If ActiveCell.Value <> "STOP" Then ActiveCell.FormulaR1C1 = _
"=IF(RIGHT(LEFT(RC[10],9),1)=""0"",LEFT(RC[10],10),LEFT(RC[10],7))"
Selection.Offset(1, 0).Select
Loop

la partie en rouge me semble à première vue inutile compte tenu du test boucle

me trompe-je? 😕
 
Re : traduction formule

Re,
Bonjour Eric S,

en effet le "If" me semble inutile

Pour la traduction en Excel de la formule :

(en partant du principe que Activecell est A1)

=SI(DROITE(GAUCHE(J1;9);1)="0";gauche(J1;10);gauche(J1;7))

qui pourrait s'écrire aussi

=SI(STXT(J1;9;1)="0";Gauche(J1;10);Gauche(J1;7))

ou alors

=GAUCHE(J1;7+(STXT(J1;9;1)="0")*3)
 
Re : traduction formule

re

a essayer

range("A1").select
Do Until ActiveCell = "STOP"
ActiveCell.FormulaR1C1 = "=IF(LEN(RC[1])=9,RC[1],"""")"
Selection.Offset(1, 0).Select
Loop

la formule if... est obtenue par l'enregistreur de macro

on sélectionne A1
on boucle tant que l'on ne rencontre pas "stop"
on copie la formule
on incrémente d'une ligne (offset) donc A2 puis A3...

Attention, si en b il n'y a pas 9 caractères, je n'écris rien """"
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
367
  • Question Question
Microsoft 365 VBA sur outlook
Réponses
14
Affichages
1 K
Retour