Si 2 celulles ne sont pas vides alors on prend la valeur de l'une d'elle

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

Everlast03

XLDnaute Occasionnel
Bonjour,

J'ai une petite question, je voudrais faire un test avec les conditions suivantes :


  1. Il faut que la colonne B et C ne soient pas vides pour que l'on prenne la valeur de B


Cordialement

PS : J'ai essayé de faire ça en utilisant le "compteur" donné en dessous mais je n'arrive pas à dire que je veux prendre la valeur de B correspondant à la ligne utilisée...

Code:
'test effectué sur la 2ème colonne
colonne = 2
ligne = 5
'trouve le numéro de la dernière ligne non vide pour limiter la boucle
compteur = Columns("F:F").Find("*", CellS(ligne, colonne), , , xlByRows, xlPrevious).Row
For ligne = 1 To compteur
'si les 2 lignes ne sont pas vides on prend la valeur de B
If IsEmpty(CellS(ligne, colonne)) = False And IsEmpty(CellS(ligne, colonne + 1)) = FalseThen
[COLOR="Lime"] NbMarche = Range("ligne,colonne").Value[/COLOR]
End If
Next
End Sub
 
Re : Si 2 celulles ne sont pas vides alors on prend la valeur de l'une d'elle

bonjour Everlast03

tel quel ton code donnera le resultat pour la derniere fois ou B et C ne seront pas vide
Si tu souhaites arreter des que B et c ne sont pas vide:
Code:
...
If IsEmpty(CellS(ligne, colonne)) = False And IsEmpty(CellS(ligne, colonne + 1)) = FalseThen
[COLOR=black] NbMarche = Range("ligne,colonne").Value[/COLOR]
[COLOR=black]exit for
[/COLOR]End If
....

De plus la ligne:
ligne = 5 est inutile

Comme il est difficile d'interpreter un code erroné, il serait bon de preciser ce que tu souhaites avoir comme resultat
 
Re : Si 2 celulles ne sont pas vides alors on prend la valeur de l'une d'elle

Oui, en fait je veux relever la valeur de B pour la dernière fois ou la colonne B et C sont remplies. Avant la ligne 5 il y a B et C non vides, c'est pourquoi je ne veux m'intéresser qu'aux lignes en partant de 5...

Je dois faire quoi ?
 
Re : Si 2 celulles ne sont pas vides alors on prend la valeur de l'une d'elle

Re

J'ai finalement tout repris tant il y avait d'erreurs

Teste ceci
Code:
Sub test()
'test effectué sur la 2ème colonne
colonne = 2
'trouve le numéro de la dernière ligne non vide pour limiter la boucle
compteur = Range("F65536").End(xlUp).Row
For ligne = 5 To compteur
'si les 2 lignes ne sont pas vides on prend la valeur de B
If IsEmpty(Cells(ligne, colonne)) = False And IsEmpty(Cells(ligne, colonne + 1)) = False Then
 NbMarche = Cells(ligne, colonne).Value
End If
Next
End Sub
 
Re : Si 2 celulles ne sont pas vides alors on prend la valeur de l'une d'elle

Re

priere de te referer a l'aide d'Excel (touche F1 a partir de Vba Editor)

End, propriété


Renvoie un objet Range qui représente la cellule située à la fin de la région contenant la plage source. Revient à appuyer sur FIN+HAUT, FIN+BAS, FIN+GAUCHE, ou FIN+DROITE. En lecture seule.
Cet exemple montre comment sélectionner la cellule située en haut de la colonne B dans la région contenant la cellule B4
Range("B4").End(xlUp).Select
 
- 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
7
Affichages
798
Réponses
3
Affichages
830
Retour