Comparer des cellules avec un variables

Fermé
benoit - 27 juil. 2010 à 15:40
 benoit - 28 juil. 2010 à 08:04
Bonjour,



je fais une macro, j'ai besoin de demander le jour a la personne mettre la réponse dans une variable et ensuite comparer la valeur de la variable avec une plage de cellule, et quand la valeur est =, alors sélectionner la cellule de la même ligne mais la colonne juste a droite
A voir également:

8 réponses

lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
27 juil. 2010 à 22:54
rectifie le code par
Dim Rep As Integer, Lig As Integer, Col As Integer
    Rep = InputBox("quel est le jour du mois de la caisse")
    If Rep = 0 Then Exit Sub 'Si annuler
    Lig = 6: Col = 1
    Do While Rep <> Cells(Lig, Col).Value
        If Cells(Lig, Col) = "" Then
            MsgBox "Référence introuvable"
            Exit Sub
        End If
        Lig = Lig + 1
    Loop
    'ici la référence à rep à été touvée sur la ligne Lig

Mais il n'est pas nécessaire de faire tout ça.
Dim Rep As Integer, Lig As Integer
    Rep = InputBox("quel est le jour du mois de la caisse")
    If Rep = 0 Then Exit Sub 'Si annuler
    Lig = Rep + 5

Aurra le même résultat et plus rapide.
A+

1
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
27 juil. 2010 à 15:51
Bonjour,
Montre-nous le code de ta macro.
A+
0
Sheets("Cash-Paid out-Service").Select

rep = InputBox("quel est le jour du mois de la caisse", vbYes)


'Do Until rep = Cells(li, co).Value

'If rep = Cells(li, co).Value Then
'Exit Do

'End If

'Loop



li = 6
co = 2

Cells(li, co).Select
ActiveCell.FormulaR1C1 = InputBox("entrer le montant cash figurant sur la balance", vbYes)
co = co + 1

Cells(li, co).Select
ActiveCell.FormulaR1C1 = InputBox("entrer le montant paid out figurant sur la balance", vbYes)
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
27 juil. 2010 à 16:08
Déjà pour tes première lignes.. tu n'icrémebnte pas ta variable Li donc la macro bloque. Essaye avec,
Dim Rep
    Rep = InputBox("quel est le jour du mois de la caisse")
    If Rep = "" Then Exit Sub 'Si annuler
    Do While Rep <> Cells(li, co).Value
        If Cells(li, co) = "" Then
            MsgBox "Référence introuvable"
            Exit Sub
        End If
        li = li + 1
    Loop

    'ici la référence à rep à été touvée sur la ligne Li

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
merci pour ta solution, j'ai éssayé ton code le problème est qu'il ne trouve rien quand je tape un chiffre dans rep (par exemple 5) il continu la boucle et ne s'arrete seulement quand la cellule est vide. je cherche mais je ne trouve pas encore le bon code
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
27 juil. 2010 à 20:56
Dans quel colonne se trouve les jours ? (1, 2, 3, ...)
Et a partir de quel ligne ? (le 1)
0
dans la première colonne se trouve les jours
a partir de la 6ème ligne
0
merci pour ta réponse cela fonctionne parfaitement,
Bonne journée
0