Fonction si dans une macro

Résolu/Fermé
mds23 Messages postés 18 Date d'inscription dimanche 15 mars 2015 Statut Membre Dernière intervention 12 avril 2015 - 17 mars 2015 à 18:28
Le Pingou Messages postés 12186 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 13 novembre 2024 - 17 mars 2015 à 23:48
Bonjour,

je suis en train de créer un logiciel devis-facture, cependant lorsque je transforme un devis en facture, je veux qu'il ne soit plus modifiable.
Or, j'ai besoin d'une macro pour me permettre de saisir un numéro de devis et qu'un message d'erreur s'affiche selon s'il a été modifié ou pas...

besoin d'aide SVP
Merci d'avance.

Cordialement

A voir également:

5 réponses

Le Pingou Messages postés 12186 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 13 novembre 2024 1 449
Modifié par Le Pingou le 17/03/2015 à 21:48
Bonjour,
Et pourquoi ne pas donner un numéro de facture en mentionnant en plus le numéro du devis !


Salutations.
Le Pingou
0
mds23 Messages postés 18 Date d'inscription dimanche 15 mars 2015 Statut Membre Dernière intervention 12 avril 2015
17 mars 2015 à 21:50
J'ai effectivement un numéro de facture, je suis actuellement en train de me lancer sur une recherche V dans la macro, en effet si le numéro de devis saisie est déjà répertorié dans la base de données en tant que "facturé" alors cela affiche un message d'erreur.
0
mds23 Messages postés 18 Date d'inscription dimanche 15 mars 2015 Statut Membre Dernière intervention 12 avril 2015
17 mars 2015 à 21:51
Mais j'ai pour l'instant une erreur sur ma macro
0
Le Pingou Messages postés 12186 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 13 novembre 2024 1 449
17 mars 2015 à 22:08
Bonjour,
Un brin chinois votre affaire, est-il possible d'avoir votre code, en utilisant le fichier exemple de l'autre jour ?

0
mds23 Messages postés 18 Date d'inscription dimanche 15 mars 2015 Statut Membre Dernière intervention 12 avril 2015
17 mars 2015 à 22:22
Voici le lien du document : https://www.cjoint.com/?3CrwGAjja2O

je vous copie ci-joint le code :
Sub VERIF_NUM_DEV()

Dim NumDev As Integer

NumDev = InputBox("Quel est le numéro du devis à facturer ?")
Range("m10").Value = NumDev

Sheets("Facture - Client").Range("m11").FormulaLocal = "=RECHERCHEV(m10;Tableau16;1;0)"

If Range("m10").Value = Range("m11") Then
MsgBox ("Ce devis a déjà été facturé ! ")
Range("M10").Select
Selection.ClearContents

Else
Range("m10").Value = NumDev

End If
End Sub

Cela fonctionne très bien lorsque le devis a déjà été transformé mais lorsque ce n'est pas le cas la macro ne va pas jusqu'à la fin car il y a une erreur que je n'arrive pas à régler.
0
Le Pingou Messages postés 12186 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 13 novembre 2024 1 449
17 mars 2015 à 22:50
Bonjour,
Merci pour l'information, à première vue je pense qu'il faut modifier votre code, je dois tester avec votre fichier, patience.

0
mds23 Messages postés 18 Date d'inscription dimanche 15 mars 2015 Statut Membre Dernière intervention 12 avril 2015
17 mars 2015 à 22:55
effectivement, il y a une erreur sur le code lorsque je saisie un autre chiffre que 1, cependant pour 1 tout fonctionne...
0

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

Posez votre question
Le Pingou Messages postés 12186 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 13 novembre 2024 1 449
Modifié par Le Pingou le 17/03/2015 à 23:59
Bonjour,
Essayez avec ce code :
Sub VERIF_NUM_DEV()
Dim NumDev As Integer
NumDev = InputBox("Quel est le numéro du devis à facturer ?")
Range("m10").Value = NumDev
Sheets("Facture - Client").Range("m11").FormulaLocal = "=RECHERCHEV(m10;Tableau16;1;0)"
If WorksheetFunction.IsNA(Range("m11")) Then
    MsgBox ("ce devis n'existe pas")
    Range("M11").ClearContents
    Exit Sub
ElseIf Range("m10").Value = Range("m11") Then
    MsgBox ("Ce devis a déjà été facturé ! ")
    Range("M10").Select
    Selection.ClearContents
Else
    Range("m10").Value = NumDev
End If
End Sub


Salutations.
Le Pingou
0