XL 2010 Celule suivante si...

Bens7

XLDnaute Impliqué
Bonjour à tous !
Voila j'ai un bouton suivant dans un user qui doit descendre à la cellule suivante (colonne R (num de facture)) genre :
Activecell.ofset(1,0).select

Mais je voudrais rajouter une condition par apport à la colonne T.

En fait : Descend a la prochaine facture (col R) qui contiens la date d'aujourdhui dans la colonne T.
Merci à vous PS( j'ai tester tt seul déjà mais étant novice ...que des bug...)
 

Bens7

XLDnaute Impliqué
Non ca plante ...
je m'explique disons qu'il me reste qu'un seul client et que je modifie la date du dernier client trouve je le met a Mardi prochain(userform en modal)
du coup ya aucune entre viable si je clik sur suivant il plante
donc jai essaye ceci en pieces jointes ...
si ya pas la date du jour dans la collone >alors msgbox >sinon suivant
Mais je sais pas ou ca foire mais sa fonctionne pas non plus... si je change le dernier client et clik
 

Pièces jointes

  • suivant aujourdhui.xlsm
    26.6 KB · Affichages: 30

Hieu

XLDnaute Impliqué
Une v5, avec une fonction checkdate :
VB:
Function checkdate() As Boolean
Dim auj As Variant
auj = Date
prelig = 2 ' premiere ligne
derlig = Range("l65536").End(xlUp).Row

For i = prelig To derlig
    If Range("l" & i) = auj Then
        checkdate = True
        Exit Function
    End If
Next i
End Function

La procédure devient comme ça :
VB:
Private Sub CommandButton1_Click()
[d2].Select

If checkdate Then GoTo 1
MsgBox ("PLUS DE CLIENT AUJOURDHUI")
Exit Sub

1:
UserForm1.Show
End Sub

++
 

Pièces jointes

  • suivant aujourdhui_v5.xlsm
    27.8 KB · Affichages: 27

Bens7

XLDnaute Impliqué
Je vais craker ...lolll je veux faire un truc tout c.... pour verifier avant de lancer le suivant et ca marche pas :
Sub checkdate()
With ActiveSheet

Set L = .[L:L].Find(What:=Date, LookIn:=xlValues, LookAt:=xlWhole)

If Not L Is Nothing Then
MsgBox "YEN A"
Else
MsgBox "YEN A PAS": Exit Sub
End If

End With
Set L = Nothing
End Sub
 

Hieu

XLDnaute Impliqué
Lorsque je change la date de L10, y a ecrit : PLUS DE CLIENT AUJOURDHUI
et ça sort du userform ; comme demandé, post #11.

Ta procedure :
VB:
Private Sub CommandButton1_Click()
UserForm1.Show
checkdate
End Sub
t'ouvre ton userform ; j'pensais que ce n'etait pas ce que tu voulais ?? càd, si y a pas de date, bah, pas de userform.

Du coup, j'comprends pas bien ce que tu veux ??
Est-ce que tu veux la msgbox, après la userform ?? tu veux que le msgbox s'affiche en appuyant sur le bouton "precedent" ou "suivant" ?
 

Bens7

XLDnaute Impliqué
1. Si ya pas de date : pas besion d'ouvrire le User> juste msgbox
2.Ya des dates: donc userform >suivant> au fur et a mesure les dates on change vu qu'on doit les rapeller plus tard ...
Donc le dernier client si je lui change la date et je clik suivant (car mon vrai user cache le tablo donc je sais pas si jen ai encore) > msgbox "YA PLUS DE CLIENT">donc pas de suivant
 

Bens7

XLDnaute Impliqué
Ho oui !!! Merci beaoucop en tout cas !!! (heuf.... jvais me coucher...)
Sub cheketsuivant()
With ActiveSheet

Set l = .[L:L].Find(What:=Format(Date, "dd/mm/yy"), LookIn:=xlValues, LookAt:=xlWhole)
If Not l Is Nothing Then
suivantok
Else
MsgBox "IL N'Y A PLUS DE CLIENT AUJOURDHUI": Exit Sub
End If

End With
Set l = Nothing
End Sub


Sub suivantok()
Dim auj As Variant
auj = Date
lig = ActiveCell.Row
derlig = Range("l65536").End(xlUp).Row
suiv:
For i = lig + 1 To derlig
If Range("l" & i) = auj Then
Range("d" & i).Select
'si bon trouve client
UserForm1.TextBox1 = ActiveCell: trouveclient
Exit Sub
End If
Next i
lig = suiv
GoTo suiv
End Sub
 

Discussions similaires

Réponses
24
Affichages
2 K

Statistiques des forums

Discussions
312 453
Messages
2 088 550
Membres
103 881
dernier inscrit
malbousquet