message a l ouverture et case a cocher

rudy dehaudt

XLDnaute Occasionnel
bonjour a tous,
sur le liens cijoints j ai déposer un fichier qui a pour bût de répertorié mes bon de commande
j ai essayer de placer une case a cocher qui m averti a l ouverture du classeur si un avoir a dépasser la date limite

le code ci dessous fonctionne impect sur un autre fichier mais je n arrive pas a l adapter ( l indice n appartient pas a la sélection )

merci d avance de votre aide

A+

Private Sub Workbook_open()
Dim d As Date
d = Date
For n = Sheets("Suivi de BL et FACTURE").Range("N65536").End(xlUp).Row To 2 Step -1'date maxi de l avoir
If d > Sheets("Suivi de BL et FACTURE").Range("N" & n) Then
If Sheets("Suivi de BL et FACTURE").Range("A" & P) = FAUX Then'case a cocher et fournisseur
a = Sheets("Suivi de BL et FACTURE").Range("H" & P)'montant de l voir et le fournisseur
r = d - Sheets("Suivi de BL et FACTURE").Range("N" & P).Value
MsgBox ("Retard du fournisseur " & Sheets("Suivi de BL et FACTURE").Range("N" & P) & " au montant de " & a & "€ étant du pour le " & Sheets("Suivi de BL et FACTURE").Range("B" & n).Value & " n'a pas été payé et est en retard de " & r & " jours")
End If
End If
Next n
End Sub

Cijoint.fr - Service gratuit de dépôt de fichiers
 

Pierrot93

XLDnaute Barbatruc
Re : message a l ouverture et case a cocher

Bonjour Rudy,

tu devrais nous indiquer quelle ligne de code bogue.... d'après le type d'erreur, je pense qu'il s'agit sans doute d'un nom d'objet, vérifie peut être que la feuille en question existe bien dans le classeur... Perso peux pas accéder à ton fichier, problème de proxy avec ce site...

bonne soirée
@+
 

rudy dehaudt

XLDnaute Occasionnel
Re : message a l ouverture et case a cocher

bonjour pierrot93
voici la ligne qui bogue

For n = Sheets("Suivi de BL et FACTURE").Range("N65536").End(xlUp).Row To 2 Step -1 'date maxi de l avoir

et voici la ligne du dessou qui comporte ("N" & n) l erreur et t elle la ?

If d > Sheets("Suivi de BL et FACTURE").Range("N" & n) Then

A+
 

tototiti2008

XLDnaute Barbatruc
Re : message a l ouverture et case a cocher

Bonjour rudy, Bonjour Pierrot,

Bien vu Pierrot ;)

ta feuille se nomme Sheets("Suivi de BL et FACTURE ") (avec un espace à la fin)
Donc soit tu rajoute un espace dans ton code VBA partout, soit tu enlèves l'espace dans le nome de la feuille et dans tout le code VBA...
 

kjin

XLDnaute Barbatruc
Re : message a l ouverture et case a cocher

Bonsoir,
Ou tu mets un espace à la fin du nom de l'onglet "Suivi de BL et FACTURE" ou pas;perso, je pencherais plutôt pour la deuxième solution !
(utilise rechercher/remplacer par le biais du menu)
C'est quoi la variable P
Pourquoi désactiver les événements
Pas vérifié le reste...
Code:
Private Sub Workbook_open()
Dim d As Date, dl As Long
With Sheets("Suivi de BL et FACTURE")
    d = Date
    dl = .Range("N65536").End(xlUp).Row
    For n = dl To 2 Step -1 'date maxi de l avoir
        If d > .Range("N" & n) Then
            If .Range("A" & n) = FAUX Then 'case a cocher et fournisseur
                a = .Range("H" & n) 'montant de l voir et le fournisseur
                r = d - .Range("N" & n).Value
                MsgBox ("Retard du fournisseur " & .Range("N" & n) & _
                " au montant de " & a & " € étant du pour le " & _
                .Range("B" & n).Value & " n'a pas été payé et est en retard de " & _
                r & " jours")
            End If
      End If
    Next n
End With

End Sub

Edit : re tototiti :), salut Pierrot :), juste un peu à la bourre...!

A+
kjin
 

rudy dehaudt

XLDnaute Occasionnel
Re : message a l ouverture et case a cocher

bonjour tototiti2008

merci de ton aide,
je viens de rectifier la boulette, mais malgré cela maintenat j ai

erreur definie par l application ou par l objet sur la ligne

If d > Sheets("Suivi de BL et FACTURE").Range("N" & n) Then


??

A+
 

rudy dehaudt

XLDnaute Occasionnel
Re : message a l ouverture et case a cocher

copie revu ( j aurai revu avant de poster je ne vous aurez pas fait perdre votre temps et je m en excuse )
voici pour celui que ça interrese

A+
Dim d As Date
d = Date
For n = Sheets("Suivi de BL et FACTURE ").Range("N65536").End(xlUp).Row To 2 Step -1 'date maxi de l avoir
If d > Sheets("Suivi de BL et FACTURE ").Range("N" & n) Then
If Sheets("Suivi de BL et FACTURE ").Range("A" & n) = FAUX Then
a = Sheets("Suivi de BL et FACTURE ").Range("H" & n) 'montant de l voir et le fournisseur
r = d - Sheets("Suivi de BL et FACTURE ").Range("N" & n).Value
MsgBox ("Retard du fournisseur " & Sheets("Suivi de BL et FACTURE ").Range("C" & n) & " au montant de " & a & "€ étant du pour le " & Sheets("Suivi de BL et FACTURE ").Range("B" & n).Value & " n'a pas été payé et est en retard de " & r & " jours")
End If
End If
Next n
 

Discussions similaires

Réponses
4
Affichages
165