Problème: erreur 1004

Résolu/Fermé
Jgregoire Messages postés 2 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 27 juin 2014 - 27 juin 2014 à 14:29
Jgregoire Messages postés 2 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 27 juin 2014 - 27 juin 2014 à 14:40
Bonjour à tous,

Pour le compte de monde entreprise avec d'automatiser certaine procédure je me suis lancé dans les macros sur excel 2007. Récemment je me suis retrouvé confronté à l'erreur 1004 et je ne vois pas comment régler se problème.

Je vous sollicite donc pour m'aider à régler se problème. Le but de la macro est de vérifier qu'une valeur calculé en fonction d'un choix fais dans une liste déroulante soit bien inférieur ou égale au base de donnée et indiqué par un message que la valeur est trop grande.

L'erreur apparait sur le troisième set pour moi.

Voicis le code, je vous remercie d'avance pour votre aide:

Sub précipitation()

'L'idée est que lorsque l'on choisis notre matériel (pot ou flacon),
'Si le nombre calculé de contenant nécessaire est supérieur aux quantités disponible de pot.
'Un message s'affiche indiquant qu'un second choix est necessaire ou de modifier le type de pot choisis.

Dim potcal As Range 'nombre calculé
Dim potdisp As Range 'nombre disponible
Dim pottype As Range 'liste detype de pot pouvant être choisis en faisant varié potcal et potdisp
Dim txt As Range 'la liste de type de pot mais dans la base de donnée
Dim i As Integer



For i = 1 To 10 Step 1

Set pottype = Worksheets("Standard").Range("Y134")
Set potcal = Worksheets("Standard").Range("X134")
Set potdisp = Worksheets("Flacon_et_pot").Range("C" & "i") 'problème 1004
Set txt = Worksheets("Flacon et pot").Range("A" & "i")



If txt = pottype Then

If potcal > potdisp Then

Range("AA134") = "quantité de pot insuffisant"
Range("X134") = potdisp

End If

End If

Next i



End Sub

2 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
Modifié par Polux31 le 27/06/2014 à 14:37
Bonjour,

Faire :
Set potdisp = Worksheets("Flacon_et_pot").Range("C" & i) 
Set txt = Worksheets("Flacon_et_pot").Range("A" & i)


Il ne faut pas de doubles cote pour les variables de type numérique.
Attention également au nom des onglets !!!

«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
Nicolas Boileau
0
Jgregoire Messages postés 2 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 27 juin 2014
27 juin 2014 à 14:40
Je te remercie Polux31 pour ta réponse, sa fonctionne maintenant.
0