• Initiateur de la discussion Initiateur de la discussion jeanlouisn
  • 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 !

J

jeanlouisn

Guest
bonsoir chers amis exceleurs,
je suis novice en vba, il me faut de suite vous en informer.
Voici mon problème et je serai reconnaissant quiconque pourrait m'aider à le résoudre.

Je souhaite faire un code qui fasse la chose suivante:

- j'ai une feuille vide dans laquelle je compte coller des données en collonne (dans la collonne B)
- sachant cela, je souhaite qu'en collonne A, dans la cellule A1, ma macro inscrive la formule suivante: =OR(B1="a";B1="b";B1="c";B1="d";B1="e";B1="f"),
puis en Cellule A2, celle ci : =OR(B2="a";B2="b";B2="c";B2="d";B2="e";B2="f"), et ainsi de suite dans les cellules A3, A4 et suivantes tant qu'en collonne A on ne rencontre pas (disons) 10 lignes conséqutives vides

Quelqu'un aurait-il une suggestion?
D'avance merci.
JL
 
Re : macro loop ou while

Bonsoir


Je me permets de te proposer une formule équivalente à la tienne

=OU(CODE(B1)>=97;CODE(B1)<=107)

La macro de recopie
Code:
Sub Macro4()
With Range("A1")
    .FormulaR1C1 = "=OR(CODE(R[]C[1])>=97,CODE(R[]C[1])<=107)"
    .AutoFill Destination:=Range("A2:A18")
End With
End Sub
 
Dernière édition:
Re : macro loop ou while

Salut,

Ton soucis, c'est la recopie de formule ???
Avec ta formule, ou celle proposée par Staple1600, c'est automatique, il suffit de recopier la formule, soit par copier / coller, soit par ctrl+b, sot a la souris par la poignée, soit .....
 
Re : macro loop ou while

RE

Avec While (rempit toutes les cellules vide dans la première colonne
de ligne 1 à la dernière lcellule non vide)

Code:
Sub Test()
For i = 1 To [A65536].End(xlUp).Row
While IsEmpty(Cells(i, 1))
Cells(i, 1).FormulaR1C1 = "=OR(CODE(R[]C[1])>=97,CODE(R[]C[1])<=107)"
Wend
Next
End Sub
 
Dernière édition:
Re : macro loop ou while

re-bonsoir Staple1600 et Celeborn61,
et merci pour vos aides rapides.

La solution que tu me propose Staple1600 en tant que formule alternative ne me conviendra pas car j'ai donné les valeurs "a" "b" "c" etc.. comme exemple, mes données sont du texte du type "Nom", "Prenom", "numéro", "Adresse" etc.. donc la fonction =code() ne s'y prête pas.

Celeborn61, mon souci n'est pas la recopie mais plutot l'automatisation de l'écriture de la formule =Or(..) dans toute les Cellule A pour lesquelles la Cellule en B adjascente n'est pas vide.

Il est surement important de préciser que le nombre de valeur que je copierai dans la col B peut varier et peut atteindre 6 à 7 mille lignes. C'est dans un soucis de légerté du fichier que j'en arrive à vouloir faire de l'entrée auto de formule dans la cellule adjascente d'une cellulle non vide, ce tant que je ne rencontre pas 10 cellules non vides.

Pour plus de clareté je vous envoie un fichier en pièce jointe où en collone B j'ai copié des données telle que je les souhaite et en collonne A les formules associées
 

Pièces jointes

Re : macro loop ou while

Re

Code:
Sub Test()
For i = 1 To [A65536].End(xlUp).Row
While IsEmpty(Cells(i, 2))
Cells(i, 1).FormulaR1C1 = _
 "=OR(RC[1]=""a"",RC[1]=""b"",RC[1]=""c"",RC[1]=""d"",RC[1]=""e"",RC[1]=""f"")"
Wend
Next
End Sub
 
Dernière édition:
Re : macro loop ou while

Merci encore et encore pour ton aide,

Désolé de n'avoir pas été si clair au début, c'était dans un soucis de simplicité mais malheureusement j'ai raté mon but.

Ton code semble fonctionner parfaitement mais serait il possible d'y ajouter la condition des 10 lignes vides qui stopperait l'écriture de la formule? Ceci car il se peut avec mes données que j'aie entre 3 et 9 lignes consécutives vides et qu'à la suite me données reprennent...

Si tu as une meilleure idée je te remercie de me la faire savoir, d'autant qu'avec la solution étudiée jusqu'ici et pour laquelle tu m'es d'une grande aide, les ressources utilisées par excel sont passablement grandes

D'avance merci
JL
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
829
Réponses
9
Affichages
884
L
  • Question Question
Réponses
3
Affichages
768
J
Réponses
2
Affichages
627
Joblender974
J
S
Réponses
6
Affichages
2 K
simsinaty
S
E
Réponses
1
Affichages
1 K
Elegancya
E
E
Réponses
2
Affichages
1 K
Edouard :)
E
Retour