Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro (formule pour cellule active)

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 !

Usine à gaz

XLDnaute Barbatruc
Bonjour à tous,

Une nouvelle fois, je viens vers vous chercher du secours !!!

Voici mon soucis :

Dans une macro, au préalable, je remets à vide ("") une série de cellules.

je voudrais faire la "chose" suivante :

par exemple, écrire dans la macro pour la cellule "E2" que si la cellule "D2" est égale à "";E2 "",sinon E2 "ça marche"

Mais, c'est une valeur à donner dans la cellule qui est concernée par la formule et je ne sais pas faire.

"J'espère est compréhensible" LOL

Si cela est possible .....

Merci d'avance de l'intérêt que vous portez à nos questions de profanes.

Amicalement,
Lionel,
 
Dernière édition:
Re : Macro (formule pour cellule active)

Bonjour,

Désolé de te déranger autant, mais j'avais pas compris qu'il manquait la le 2 eme argument (un peu lourd sans doute LOL)

Voila ce que j'ai fait :

Dim i As Long
For i = 5 To 294 Step 12
Cells(3, i).Resize(, 2).Value = IIf(Cells(3, i - 1).Value = 0, 1, 0)
Next i

Maintenant la macro coince sur Dim i As Long

Ton code est-il une macro qui doit commencer par Sub... et finir par End Sud ou puis-je l'introduire dans une macro ?

Un grand merci pour ce que tu fais,
Amicalement,
Lionel,
 
Dernière édition:
Re : Macro (formule pour cellule active)

Re,

oui, doit être dans une procédure :
Code:
Option Explicit
Sub test()
Dim i As Long
For i = 5 To 294 Step 12
Cells(3, i).Resize(, 2).Value = IIf(Cells(3, i - 1).Value = 0, 1, 0)
Next i
End Sub
 
Re : Macro (formule pour cellule active)

Re-Bonjour,
Bonjour à tous,

J'y suis enfin arrivé !!!

voici ce que j'ai fait :

Ta macro qui fonctionne super pour mettre les uns !

Sub SM1()
'
' SM1 Macro
'

'
Dim i As Long
For i = 5 To 294 Step 12
Cells(3, i).Resize(, 2).Value = IIf(Cells(3, i - 1).Value = """", 0, 1)
Next i
End Sub

Toujours ta macro qui fonctionne super pour les enlever !

Sub SM0()
'
' SM0 Macro
'

'

Dim i As Long
For i = 5 To 294 Step 12
Cells(3, i).Resize(, 2).Value = IIf(Cells(3, i - 1).Value = 1, 0, 0)
Next i
End Sub

Mais elle me laisse tous les uns après les zones d'informations (voire classeur joint).

J'ai ajouté cette petite macro pour les enlever complètement

Sub Efface1()
'
' Efface1 Macro
'

'
Rows("3:3").Select
Selection.Replace What:="1", Replacement:="", LookAt:=xlWhole, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("A3").Select
ActiveCell.FormulaR1C1 = "1"

End Sub


Un grand merci pour ton aide,
Amicalement,
Lionel,
 

Pièces jointes

Re : Macro (formule pour cellule active)

Bonjour,

remplace peut être dans la boucle le 294 par 282 sans garantie...

Bonsoir Pierrot,
Bonsoir à tous,

J'ai essayé mais les "1" intempestifs restent encore.
On va laisser comme ça, puisque qu'avec la petite macro supplémentaire ça me convient.

Encore merci de ton aide sans laquelle j'y serais encore,
Amicalement,
Lionel,
 
- 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
XL 2021 Macro
Réponses
6
Affichages
313
Réponses
5
Affichages
323
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…