XL 2016 formule avec bouton

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 !

richardlion

XLDnaute Occasionnel
bonjour a tous,

je cherche a conjuguer formules =si(estvide) avec une une action bouton active x.

j'ai un fichier avec des colonnes secu et capa qui se remplissent automatiquement est des colonnes securite capacite.
je souhaiterais en appuyant sur mon bouton active x qu'une formule si(estvide) fonctionne sur plusieurs cellules.
dans le e cas présent du fichier ci joint.
avec le bouton active x exportation
je souhaite que si ma cellule H8 est vide qu'elle prenne la valeur de E8 sinon H8 et si ma cellule I8 est vide quelle prenne la valeur de F8 sinon I8.

je n'arrive a pas conjuguer le bouton et la formule.

si vous pouvez m'aider.

a votre disposition pour echange
 

Pièces jointes

Bonjour Richardlion,
Un essai en PJ avec :
VB:
Private Sub ToggleButton1_Click()
    If [H8] = "" Then [H8] = [E8]
    If [I8] = "" Then [I8] = [F8]
End Sub
et si l'idée était de faire la même chose sur toute les valeurs du tableau, alors :
Code:
Sub Exportation()
Application.ScreenUpdating = False
DL = [A65500].End(xlUp).Row
For L = 8 To DL
    If Cells(L, "H") = "" Then Cells(L, "H") = Cells(L, "E")
    If Cells(L, "I") = "" Then Cells(L, "I") = Cells(L, "F")
Next L
End Sub
 

Pièces jointes

Bonjour Richardlion, Toofatboy,
En post #2, il y avait deux ex suivant ce que vous vouliez faire. Je suppose que c'est la 2eme solution qui vous va.
Dans votre PJ la colonne A est vide donc ça ne peut pas marcher, et votre PJ est bourrée d'erreur difficile de s'en sortir? La prochaine fois donnez une PJ où il n'y a pas d'erreur.
Essayez :
VB:
Sub Exportation()
Application.ScreenUpdating = False
DL = [AH65500].End(xlUp).Row    ' dernière ligne, prendre une colonne sans erreur
For L = 18 To DL                ' Le tableau commence en 18
    If Cells(L, "BB") = "" And Not IsError(Cells(L, "AX")) Then Cells(L, "BB") = Cells(L, "AX")
    If Cells(L, "BD") = "" And Not IsError(Cells(L, "AY")) Then Cells(L, "BD") = Cells(L, "AY")
Next L
End Sub
J'ai choisi la colonne AH pour trouver la dernière ligne du tableau car cette colonne n'a pas d'erreur; Et je vérifie s'il n'y a pas d'erreur en AX AY avant de copier.
"L" est la ligne à traiter, elle va de 18 ( première ligne ), à la dernière ligne calculée par DL.
 
- 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

Réponses
11
Affichages
507
  • Question Question
Microsoft 365 Formule si ?
Réponses
7
Affichages
375
Réponses
4
Affichages
484
Réponses
18
Affichages
1 K
Réponses
0
Affichages
331
Retour