Récupérer ligne en cours et l'intégrer dans un Range

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

L

licwimi

Guest
Bonjour à tous,
Je suis en train de faire un petit comparateur en vba qui me permet de remplacer la MFC.
Pour ce faire, je dois comparer 2 cellules, donc j'aimerais savoir comment je récupère l'adresse de la ligne en cours dans une variable et comment puis-je l'intégrer dans un Range.

Ex:
Code:
address = Target.address 'Je ne veux récup que la ligne en cours pour l'intégrer après dans mon range:
    If Range("Dadresse").Value <= Range(Faddress).Value Then 
          Range("Fadresse").Interior.ColorIndex = 35
     End If
 
Re : Récupérer ligne en cours et l'intégrer dans un Range

Bonjour,

address = Target.address 'Je ne veux récup que la ligne en cours pour l'intégrer
pas sûr d'avoir tout compris, mais pour récupérer la ligne, regarde ceci :
Code:
Dim l As Long
l = ActiveCell.Row
'après
If Range("A" & i).Value > 10 Then
'ou
If Cells(i, 1).Value > 10 Then

bonne journée
@+
 
Re : Récupérer ligne en cours et l'intégrer dans un Range

En gros je veux comparer trois dates, mais je veux que le code soit valable pour toute ma feuille. Les dates à comparer 3 à 3 sont sur la même ligne à chaque fois, mais dans des colonnes différentes: D,F,H . Mais les comparaisons sont à faire par ligne.
Mon code:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
i = ActiveCell.Row
    If Range("D" & i).Value <= Range("F" & i).Value Then 'Vérifier que la date de fin prévisionnelle est bien avant la date de rdv posée:
        If Range("F" & i).Value < Range("H" & i).Value - 2 Then
            Range("F" & i).Interior.ColorIndex = 35
            Else
            If Range("H" & i).Value - 2 <= Range("F" & i).Value And Range("F" & i).Value <= Range("H" & i).Value Then
                Range("F" & i).Interior.ColorIndex = 45
                Else
                Range("F" & i).Interior.ColorIndex = 38
            End If
        End If
        Else
        Range("F" & i).Interior.ColorIndex = 38
    End If
End Sub
 
Dernière modification par un modérateur:
Re : Récupérer ligne en cours et l'intégrer dans un Range

Re,

si dans procédure événementielle, remplace le "activecell" par "target"...
Range(address).Offset.Value
en l'état ne fonctionnera pas... la variable "address" n'étant pas initialisée et de plus les arguments ligne et colonne de "offset" ne sont pas renseignés....
 
Re : Récupérer ligne en cours et l'intégrer dans un Range

yes en fait la variable adresse était dans l'ancienne version de mon code, là je l'ai modifié re regarde dans mon code.
Et j'ai bien déclaré i As Long .
Mais en fait au lieu de Range, je crois que je dois utiliser Cells(D, i) par exemple et je mets dans la variable i = Target.Row

C'est ça non? Cells ça se définit comment? C'est bien une manière d'aller à une cellule donnée avec les coordonnées (colonne,ligne) ?
 
- 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
12
Affichages
731
Réponses
3
Affichages
880
Retour