Bonjour,
Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00" )
Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
For intL = 3 To 15 Step 3
C'est la signification de ton message d'erreur !
"ElXav" a écrit dans le message de groupe de discussion :
Bonjour la Communauté,
En cours de migration d'Office XP vers 2007, je teste mes diverses
applications (surtout Access).
Ma seule application développée sous Excel XP se plante avec le
message d'erreur cité en objet.
Voici la portion de code:
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
If Err.Number <> 0 Then
MsgBox "Donnée incorrecte.", vbExclamation + vb OKOnly,
ETPP_NomApplication
Me.Controls("TbxProPvc1" & Format(CStr(intL),
"00")).SetFocus
GoTo Restituer_Fin
End If
Next intL
L'erreur 9 survient, alors que la valeur est bien placée dans la
cellule destination.
En debug, la feuille de destination est bien active.
Dans la fenêtre de debug, les actions suivantes sont valides:
.Cells(RngFind.Row, 33 + intL).Select ===> me sélecti onne bien
la cellule destination
? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
me renvoie bien la valeur numérique
Et en allant au plus simple et plus précis:
err.clear
.Cells(3, 36).value = "test"
? err.description => me renvoie le texte de l'erreur 9!!!
Les mêmes commandes dans un nouveau classeur passent bien.
D'avance merci pour vos suggestions.
Cordialement.
Bonjour,
Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00" )
Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
For intL = 3 To 15 Step 3
C'est la signification de ton message d'erreur !
"ElXav" <el...@free.fr> a écrit dans le message de groupe de discussion :
8ca2e6d1-3a35-4af1-b8ae-b0844b3a3...@m26g2000yqb.googlegroups.com...
Bonjour la Communauté,
En cours de migration d'Office XP vers 2007, je teste mes diverses
applications (surtout Access).
Ma seule application développée sous Excel XP se plante avec le
message d'erreur cité en objet.
Voici la portion de code:
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
If Err.Number <> 0 Then
MsgBox "Donnée incorrecte.", vbExclamation + vb OKOnly,
ETPP_NomApplication
Me.Controls("TbxProPvc1" & Format(CStr(intL),
"00")).SetFocus
GoTo Restituer_Fin
End If
Next intL
L'erreur 9 survient, alors que la valeur est bien placée dans la
cellule destination.
En debug, la feuille de destination est bien active.
Dans la fenêtre de debug, les actions suivantes sont valides:
.Cells(RngFind.Row, 33 + intL).Select ===> me sélecti onne bien
la cellule destination
? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
me renvoie bien la valeur numérique
Et en allant au plus simple et plus précis:
err.clear
.Cells(3, 36).value = "test"
? err.description => me renvoie le texte de l'erreur 9!!!
Les mêmes commandes dans un nouveau classeur passent bien.
D'avance merci pour vos suggestions.
Cordialement.
Bonjour,
Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00" )
Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
For intL = 3 To 15 Step 3
C'est la signification de ton message d'erreur !
"ElXav" a écrit dans le message de groupe de discussion :
Bonjour la Communauté,
En cours de migration d'Office XP vers 2007, je teste mes diverses
applications (surtout Access).
Ma seule application développée sous Excel XP se plante avec le
message d'erreur cité en objet.
Voici la portion de code:
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
If Err.Number <> 0 Then
MsgBox "Donnée incorrecte.", vbExclamation + vb OKOnly,
ETPP_NomApplication
Me.Controls("TbxProPvc1" & Format(CStr(intL),
"00")).SetFocus
GoTo Restituer_Fin
End If
Next intL
L'erreur 9 survient, alors que la valeur est bien placée dans la
cellule destination.
En debug, la feuille de destination est bien active.
Dans la fenêtre de debug, les actions suivantes sont valides:
.Cells(RngFind.Row, 33 + intL).Select ===> me sélecti onne bien
la cellule destination
? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
me renvoie bien la valeur numérique
Et en allant au plus simple et plus précis:
err.clear
.Cells(3, 36).value = "test"
? err.description => me renvoie le texte de l'erreur 9!!!
Les mêmes commandes dans un nouveau classeur passent bien.
D'avance merci pour vos suggestions.
Cordialement.
Bonjour,
Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
For intL = 3 To 15 Step 3
C'est la signification de ton message d'erreur !
"ElXav" a écrit dans le message de groupe de discussion :
Bonjour la Communauté,
En cours de migration d'Office XP vers 2007, je teste mes diverses
applications (surtout Access).
Ma seule application développée sous Excel XP se plante avec le
message d'erreur cité en objet.
Voici la portion de code:
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
If Err.Number <> 0 Then
MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
ETPP_NomApplication
Me.Controls("TbxProPvc1" & Format(CStr(intL),
"00")).SetFocus
GoTo Restituer_Fin
End If
Next intL
L'erreur 9 survient, alors que la valeur est bien placée dans la
cellule destination.
En debug, la feuille de destination est bien active.
Dans la fenêtre de debug, les actions suivantes sont valides:
.Cells(RngFind.Row, 33 + intL).Select ===> me sélectionne bien
la cellule destination
? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
me renvoie bien la valeur numérique
Et en allant au plus simple et plus précis:
err.clear
.Cells(3, 36).value = "test"
? err.description => me renvoie le texte de l'erreur 9!!!
Les mêmes commandes dans un nouveau classeur passent bien.
D'avance merci pour vos suggestions.
Cordialement.
Bonjour,
Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
For intL = 3 To 15 Step 3
C'est la signification de ton message d'erreur !
"ElXav" <el...@free.fr> a écrit dans le message de groupe de discussion :
8ca2e6d1-3a35-4af1-b8ae-b0844b3a3...@m26g2000yqb.googlegroups.com...
Bonjour la Communauté,
En cours de migration d'Office XP vers 2007, je teste mes diverses
applications (surtout Access).
Ma seule application développée sous Excel XP se plante avec le
message d'erreur cité en objet.
Voici la portion de code:
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
If Err.Number <> 0 Then
MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
ETPP_NomApplication
Me.Controls("TbxProPvc1" & Format(CStr(intL),
"00")).SetFocus
GoTo Restituer_Fin
End If
Next intL
L'erreur 9 survient, alors que la valeur est bien placée dans la
cellule destination.
En debug, la feuille de destination est bien active.
Dans la fenêtre de debug, les actions suivantes sont valides:
.Cells(RngFind.Row, 33 + intL).Select ===> me sélectionne bien
la cellule destination
? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
me renvoie bien la valeur numérique
Et en allant au plus simple et plus précis:
err.clear
.Cells(3, 36).value = "test"
? err.description => me renvoie le texte de l'erreur 9!!!
Les mêmes commandes dans un nouveau classeur passent bien.
D'avance merci pour vos suggestions.
Cordialement.
Bonjour,
Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
For intL = 3 To 15 Step 3
C'est la signification de ton message d'erreur !
"ElXav" a écrit dans le message de groupe de discussion :
Bonjour la Communauté,
En cours de migration d'Office XP vers 2007, je teste mes diverses
applications (surtout Access).
Ma seule application développée sous Excel XP se plante avec le
message d'erreur cité en objet.
Voici la portion de code:
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
If Err.Number <> 0 Then
MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
ETPP_NomApplication
Me.Controls("TbxProPvc1" & Format(CStr(intL),
"00")).SetFocus
GoTo Restituer_Fin
End If
Next intL
L'erreur 9 survient, alors que la valeur est bien placée dans la
cellule destination.
En debug, la feuille de destination est bien active.
Dans la fenêtre de debug, les actions suivantes sont valides:
.Cells(RngFind.Row, 33 + intL).Select ===> me sélectionne bien
la cellule destination
? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
me renvoie bien la valeur numérique
Et en allant au plus simple et plus précis:
err.clear
.Cells(3, 36).value = "test"
? err.description => me renvoie le texte de l'erreur 9!!!
Les mêmes commandes dans un nouveau classeur passent bien.
D'avance merci pour vos suggestions.
Cordialement.
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls("TbxProPvc1 " & Format(CStr(intL), "00")))
If Err.Number <> 0 Then
| Le contenu des controles est bien mis en place
Je ne parlais pas du contenu mais de leur NOM.
Désactive ta gestion d'erreur
"On error resume next" et "Err.Clear" et fait
rouler... D'ailleurs je ne comprends pas en quoi
c'est ligne de code peut générer une erreur :
For intL = 3 To 15 Step 3
Mais au delà de ces commentaires, ton message d'erreur est lié
au fait qu'excel ne trouve pas (mal orthographier - inexistant)
le nom du contrôle ou la feuille cités dans la procédure !
"ElXav" a écrit dans le message de groupe de discussion :
Bonjour,
Merci, mais ce n'est pas ça.
Comme je le dis dans mon message.
En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
de 2 ans.
Sous 2007. Le contenu des controles est bien mis en place dans les
cellules de destination, mais le message d'erreur sort tout de même.
Dans mon code, si je désactive l'instruction de sortie de ma boucle
(GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
bien traités.
Je m'interroge donc sur la sortie de ce message.
Cordialement.
On 30 nov, 12:21, "michdenis" wrote:
> Bonjour,
> Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "0 0")
> Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> For intL = 3 To 15 Step 3
> C'est la signification de ton message d'erreur !
> "ElXav" a écrit dans le message de groupe de discussi on :
>
> Bonjour la Communauté,
> En cours de migration d'Office XP vers 2007, je teste mes diverses
> applications (surtout Access).
> Ma seule application développée sous Excel XP se plante avec le
> message d'erreur cité en objet.
> Voici la portion de code:
> On Error Resume Next
> For intL = 3 To 15 Step 3
> Err.Clear
> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
> ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
> If Err.Number <> 0 Then
> MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> ETPP_NomApplication
> Me.Controls("TbxProPvc1" & Format(CStr(intL),
> "00")).SetFocus
> GoTo Restituer_Fin
> End If
> Next intL
> L'erreur 9 survient, alors que la valeur est bien placée dans la
> cellule destination.
> En debug, la feuille de destination est bien active.
> Dans la fenêtre de debug, les actions suivantes sont valides:
> .Cells(RngFind.Row, 33 + intL).Select ===> me sélec tionne bien
> la cellule destination
> ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> me renvoie bien la valeur numérique
> Et en allant au plus simple et plus précis:
> err.clear
> .Cells(3, 36).value = "test"
> ? err.description => me renvoie le texte de l'erreur 9!!!
> Les mêmes commandes dans un nouveau classeur passent bien.
> D'avance merci pour vos suggestions.
> Cordialement.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls("TbxProPvc1 " & Format(CStr(intL), "00")))
If Err.Number <> 0 Then
| Le contenu des controles est bien mis en place
Je ne parlais pas du contenu mais de leur NOM.
Désactive ta gestion d'erreur
"On error resume next" et "Err.Clear" et fait
rouler... D'ailleurs je ne comprends pas en quoi
c'est ligne de code peut générer une erreur :
For intL = 3 To 15 Step 3
Mais au delà de ces commentaires, ton message d'erreur est lié
au fait qu'excel ne trouve pas (mal orthographier - inexistant)
le nom du contrôle ou la feuille cités dans la procédure !
"ElXav" <el...@free.fr> a écrit dans le message de groupe de discussion :
af7b2623-91aa-4505-93cc-5277c4788...@p8g2000yqb.googlegroups.com...
Bonjour,
Merci, mais ce n'est pas ça.
Comme je le dis dans mon message.
En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
de 2 ans.
Sous 2007. Le contenu des controles est bien mis en place dans les
cellules de destination, mais le message d'erreur sort tout de même.
Dans mon code, si je désactive l'instruction de sortie de ma boucle
(GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
bien traités.
Je m'interroge donc sur la sortie de ce message.
Cordialement.
On 30 nov, 12:21, "michdenis" <michde...@hotmail.com> wrote:
> Bonjour,
> Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "0 0")
> Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> For intL = 3 To 15 Step 3
> C'est la signification de ton message d'erreur !
> "ElXav" <el...@free.fr> a écrit dans le message de groupe de discussi on :
> 8ca2e6d1-3a35-4af1-b8ae-b0844b3a3...@m26g2000yqb.googlegroups.com...
> Bonjour la Communauté,
> En cours de migration d'Office XP vers 2007, je teste mes diverses
> applications (surtout Access).
> Ma seule application développée sous Excel XP se plante avec le
> message d'erreur cité en objet.
> Voici la portion de code:
> On Error Resume Next
> For intL = 3 To 15 Step 3
> Err.Clear
> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
> ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
> If Err.Number <> 0 Then
> MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> ETPP_NomApplication
> Me.Controls("TbxProPvc1" & Format(CStr(intL),
> "00")).SetFocus
> GoTo Restituer_Fin
> End If
> Next intL
> L'erreur 9 survient, alors que la valeur est bien placée dans la
> cellule destination.
> En debug, la feuille de destination est bien active.
> Dans la fenêtre de debug, les actions suivantes sont valides:
> .Cells(RngFind.Row, 33 + intL).Select ===> me sélec tionne bien
> la cellule destination
> ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> me renvoie bien la valeur numérique
> Et en allant au plus simple et plus précis:
> err.clear
> .Cells(3, 36).value = "test"
> ? err.description => me renvoie le texte de l'erreur 9!!!
> Les mêmes commandes dans un nouveau classeur passent bien.
> D'avance merci pour vos suggestions.
> Cordialement.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls("TbxProPvc1 " & Format(CStr(intL), "00")))
If Err.Number <> 0 Then
| Le contenu des controles est bien mis en place
Je ne parlais pas du contenu mais de leur NOM.
Désactive ta gestion d'erreur
"On error resume next" et "Err.Clear" et fait
rouler... D'ailleurs je ne comprends pas en quoi
c'est ligne de code peut générer une erreur :
For intL = 3 To 15 Step 3
Mais au delà de ces commentaires, ton message d'erreur est lié
au fait qu'excel ne trouve pas (mal orthographier - inexistant)
le nom du contrôle ou la feuille cités dans la procédure !
"ElXav" a écrit dans le message de groupe de discussion :
Bonjour,
Merci, mais ce n'est pas ça.
Comme je le dis dans mon message.
En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
de 2 ans.
Sous 2007. Le contenu des controles est bien mis en place dans les
cellules de destination, mais le message d'erreur sort tout de même.
Dans mon code, si je désactive l'instruction de sortie de ma boucle
(GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
bien traités.
Je m'interroge donc sur la sortie de ce message.
Cordialement.
On 30 nov, 12:21, "michdenis" wrote:
> Bonjour,
> Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "0 0")
> Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> For intL = 3 To 15 Step 3
> C'est la signification de ton message d'erreur !
> "ElXav" a écrit dans le message de groupe de discussi on :
>
> Bonjour la Communauté,
> En cours de migration d'Office XP vers 2007, je teste mes diverses
> applications (surtout Access).
> Ma seule application développée sous Excel XP se plante avec le
> message d'erreur cité en objet.
> Voici la portion de code:
> On Error Resume Next
> For intL = 3 To 15 Step 3
> Err.Clear
> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
> ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
> If Err.Number <> 0 Then
> MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> ETPP_NomApplication
> Me.Controls("TbxProPvc1" & Format(CStr(intL),
> "00")).SetFocus
> GoTo Restituer_Fin
> End If
> Next intL
> L'erreur 9 survient, alors que la valeur est bien placée dans la
> cellule destination.
> En debug, la feuille de destination est bien active.
> Dans la fenêtre de debug, les actions suivantes sont valides:
> .Cells(RngFind.Row, 33 + intL).Select ===> me sélec tionne bien
> la cellule destination
> ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> me renvoie bien la valeur numérique
> Et en allant au plus simple et plus précis:
> err.clear
> .Cells(3, 36).value = "test"
> ? err.description => me renvoie le texte de l'erreur 9!!!
> Les mêmes commandes dans un nouveau classeur passent bien.
> D'avance merci pour vos suggestions.
> Cordialement.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls("TbxProPvc1" &
Format(CStr(intL), "00")))
If Err.Number <> 0 Then
| Le contenu des controles est bien mis en place
Je ne parlais pas du contenu mais de leur NOM.
Désactive ta gestion d'erreur
"On error resume next" et "Err.Clear" et fait
rouler... D'ailleurs je ne comprends pas en quoi
c'est ligne de code peut générer une erreur :
For intL = 3 To 15 Step 3
Mais au delà de ces commentaires, ton message d'erreur est lié
au fait qu'excel ne trouve pas (mal orthographier - inexistant)
le nom du contrôle ou la feuille cités dans la procédure !
"ElXav" a écrit dans le message de groupe de discussion :
Bonjour,
Merci, mais ce n'est pas ça.
Comme je le dis dans mon message.
En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
de 2 ans.
Sous 2007. Le contenu des controles est bien mis en place dans les
cellules de destination, mais le message d'erreur sort tout de même.
Dans mon code, si je désactive l'instruction de sortie de ma boucle
(GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
bien traités.
Je m'interroge donc sur la sortie de ce message.
Cordialement.
On 30 nov, 12:21, "michdenis" wrote:
> Bonjour,
> Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
> Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> For intL = 3 To 15 Step 3
> C'est la signification de ton message d'erreur !
> "ElXav" a écrit dans le message de groupe de discussion :
>
> Bonjour la Communauté,
> En cours de migration d'Office XP vers 2007, je teste mes diverses
> applications (surtout Access).
> Ma seule application développée sous Excel XP se plante avec le
> message d'erreur cité en objet.
> Voici la portion de code:
> On Error Resume Next
> For intL = 3 To 15 Step 3
> Err.Clear
> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
> ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
> If Err.Number <> 0 Then
> MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> ETPP_NomApplication
> Me.Controls("TbxProPvc1" & Format(CStr(intL),
> "00")).SetFocus
> GoTo Restituer_Fin
> End If
> Next intL
> L'erreur 9 survient, alors que la valeur est bien placée dans la
> cellule destination.
> En debug, la feuille de destination est bien active.
> Dans la fenêtre de debug, les actions suivantes sont valides:
> .Cells(RngFind.Row, 33 + intL).Select ===> me sélectionne bien
> la cellule destination
> ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> me renvoie bien la valeur numérique
> Et en allant au plus simple et plus précis:
> err.clear
> .Cells(3, 36).value = "test"
> ? err.description => me renvoie le texte de l'erreur 9!!!
> Les mêmes commandes dans un nouveau classeur passent bien.
> D'avance merci pour vos suggestions.
> Cordialement.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls("TbxProPvc1" &
Format(CStr(intL), "00")))
If Err.Number <> 0 Then
| Le contenu des controles est bien mis en place
Je ne parlais pas du contenu mais de leur NOM.
Désactive ta gestion d'erreur
"On error resume next" et "Err.Clear" et fait
rouler... D'ailleurs je ne comprends pas en quoi
c'est ligne de code peut générer une erreur :
For intL = 3 To 15 Step 3
Mais au delà de ces commentaires, ton message d'erreur est lié
au fait qu'excel ne trouve pas (mal orthographier - inexistant)
le nom du contrôle ou la feuille cités dans la procédure !
"ElXav" <el...@free.fr> a écrit dans le message de groupe de discussion :
af7b2623-91aa-4505-93cc-5277c4788...@p8g2000yqb.googlegroups.com...
Bonjour,
Merci, mais ce n'est pas ça.
Comme je le dis dans mon message.
En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
de 2 ans.
Sous 2007. Le contenu des controles est bien mis en place dans les
cellules de destination, mais le message d'erreur sort tout de même.
Dans mon code, si je désactive l'instruction de sortie de ma boucle
(GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
bien traités.
Je m'interroge donc sur la sortie de ce message.
Cordialement.
On 30 nov, 12:21, "michdenis" <michde...@hotmail.com> wrote:
> Bonjour,
> Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
> Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> For intL = 3 To 15 Step 3
> C'est la signification de ton message d'erreur !
> "ElXav" <el...@free.fr> a écrit dans le message de groupe de discussion :
> 8ca2e6d1-3a35-4af1-b8ae-b0844b3a3...@m26g2000yqb.googlegroups.com...
> Bonjour la Communauté,
> En cours de migration d'Office XP vers 2007, je teste mes diverses
> applications (surtout Access).
> Ma seule application développée sous Excel XP se plante avec le
> message d'erreur cité en objet.
> Voici la portion de code:
> On Error Resume Next
> For intL = 3 To 15 Step 3
> Err.Clear
> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
> ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
> If Err.Number <> 0 Then
> MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> ETPP_NomApplication
> Me.Controls("TbxProPvc1" & Format(CStr(intL),
> "00")).SetFocus
> GoTo Restituer_Fin
> End If
> Next intL
> L'erreur 9 survient, alors que la valeur est bien placée dans la
> cellule destination.
> En debug, la feuille de destination est bien active.
> Dans la fenêtre de debug, les actions suivantes sont valides:
> .Cells(RngFind.Row, 33 + intL).Select ===> me sélectionne bien
> la cellule destination
> ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> me renvoie bien la valeur numérique
> Et en allant au plus simple et plus précis:
> err.clear
> .Cells(3, 36).value = "test"
> ? err.description => me renvoie le texte de l'erreur 9!!!
> Les mêmes commandes dans un nouveau classeur passent bien.
> D'avance merci pour vos suggestions.
> Cordialement.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On Error Resume Next
For intL = 3 To 15 Step 3
Err.Clear
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls("TbxProPvc1" &
Format(CStr(intL), "00")))
If Err.Number <> 0 Then
| Le contenu des controles est bien mis en place
Je ne parlais pas du contenu mais de leur NOM.
Désactive ta gestion d'erreur
"On error resume next" et "Err.Clear" et fait
rouler... D'ailleurs je ne comprends pas en quoi
c'est ligne de code peut générer une erreur :
For intL = 3 To 15 Step 3
Mais au delà de ces commentaires, ton message d'erreur est lié
au fait qu'excel ne trouve pas (mal orthographier - inexistant)
le nom du contrôle ou la feuille cités dans la procédure !
"ElXav" a écrit dans le message de groupe de discussion :
Bonjour,
Merci, mais ce n'est pas ça.
Comme je le dis dans mon message.
En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
de 2 ans.
Sous 2007. Le contenu des controles est bien mis en place dans les
cellules de destination, mais le message d'erreur sort tout de même.
Dans mon code, si je désactive l'instruction de sortie de ma boucle
(GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
bien traités.
Je m'interroge donc sur la sortie de ce message.
Cordialement.
On 30 nov, 12:21, "michdenis" wrote:
> Bonjour,
> Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
> Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> For intL = 3 To 15 Step 3
> C'est la signification de ton message d'erreur !
> "ElXav" a écrit dans le message de groupe de discussion :
>
> Bonjour la Communauté,
> En cours de migration d'Office XP vers 2007, je teste mes diverses
> applications (surtout Access).
> Ma seule application développée sous Excel XP se plante avec le
> message d'erreur cité en objet.
> Voici la portion de code:
> On Error Resume Next
> For intL = 3 To 15 Step 3
> Err.Clear
> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
> ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erreur
> If Err.Number <> 0 Then
> MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> ETPP_NomApplication
> Me.Controls("TbxProPvc1" & Format(CStr(intL),
> "00")).SetFocus
> GoTo Restituer_Fin
> End If
> Next intL
> L'erreur 9 survient, alors que la valeur est bien placée dans la
> cellule destination.
> En debug, la feuille de destination est bien active.
> Dans la fenêtre de debug, les actions suivantes sont valides:
> .Cells(RngFind.Row, 33 + intL).Select ===> me sélectionne bien
> la cellule destination
> ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> me renvoie bien la valeur numérique
> Et en allant au plus simple et plus précis:
> err.clear
> .Cells(3, 36).value = "test"
> ? err.description => me renvoie le texte de l'erreur 9!!!
> Les mêmes commandes dans un nouveau classeur passent bien.
> D'avance merci pour vos suggestions.
> Cordialement.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
> L'erreur 9, ça fait déjà 2 fois que je t'explique que c'est une
question de "nom" d'objet qu'excel ne trouve pas que ce
soit une feuille ou autre objet!
Je n'ai pas ton application sous les yeux...
L'erreur 9, ça fait déjà 2 fois que je t'explique que c'est une
question de "nom" d'objet qu'excel ne trouve pas que ce
soit une feuille ou autre objet!
L'utilisation de "On Error Resume Next" doit être utilisé
parcimonieusement ! On doit savoir pourquoi on l'utilise...
et dans plusieurs cas, elle ne fait aucun sens si elle permet
de continuer l'exécution d'une procédure alors que la
feuille sur laquelle la procédure doit travailler est absente
du classeur... (ce n'est qu'un exemple)
Vaut mieux utiliser :
'-------------------------------
sub test()
Dim Gestion_Erreur as string
On error goto Gestion_Erreur
'Le code
Exit sub
Gestion_Erreur:
Msgbox Err.Number & ", " & Err.Description
'Et si on veut que le code se poursuivre à ligne
'suivante dans le code...
Resume next
End sub
'-------------------------------
Je ne peux t'en dire plus avec l'information que je dispose!
"ElXav" a écrit dans le message de groupe de discussion :
Michdenis,
J'ai fait tourner le code suivant, comme tu me le suggères.
For intL = 3 To 15 Step 3
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00")))
Next intL
Il ne plante pas.
Le résultat dans la feuille excel est correct.
Alors pourquoi l'objet Err ans mon code original prend la valeur
9??!!??
J'ai placé ces lignes (On error et Err.Number) pour éviter un arrêt du
programme en cas d'anomalie lors de la mise à jour de la feuille
excel.
Pour info, des détails su mon code:
>> On Error Resume Next
J'active l'interception d'erreur pour toutes les lignes suivantes, Le
contrôle d'erreur ayant lieu juste après la mise à jour de la feuil le
excel (transfert de mes données de ma boite de dialogue contenant mes
controles vers la feuille excel (pas pour gérer le For Next ;-) ))
>> For intL = 3 To 15 Step 3
Pour chaque controle à gérer
>> Err.Clear
Raz de l'objet Err. La ligne à monitorer est la suivante
>> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls ("TbxProPvc1" &
>> Format(CStr(intL), "00")))
Cette ligne transfert dans une cellule de la feuille active, le
contenu d'un controle de ma boite de dialogue. Les controles a traiter
sont nommés TbxProPvc103, TbxProPvc106, TbxProPvc109, TbxProPvc112 et
TbxProPvc115.
>> If Err.Number <> 0 Then
Je vérifie que la valeur mise dans la cellule ne provoque pas
d'erreur!
Normalement ca ne devrait pas. En tout cas, sous XP, Err.Number est
toujours à 0.
Le reste est la fin de la boucle, avec un saut à la fin de la
procédure en cas d'erreur.
Si tu as une idée...
Cordialement.
On 30 nov, 14:27, "michdenis" wrote:
> | Le contenu des controles est bien mis en place
> Je ne parlais pas du contenu mais de leur NOM.
> Désactive ta gestion d'erreur
> "On error resume next" et "Err.Clear" et fait
> rouler... D'ailleurs je ne comprends pas en quoi
> c'est ligne de code peut générer une erreur :
> For intL = 3 To 15 Step 3
> Mais au delà de ces commentaires, ton message d'erreur est lié
> au fait qu'excel ne trouve pas (mal orthographier - inexistant)
> le nom du contrôle ou la feuille cités dans la procédure !
> "ElXav" a écrit dans le message de groupe de discussi on :
>
> Bonjour,
> Merci, mais ce n'est pas ça.
> Comme je le dis dans mon message.
> En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
> de 2 ans.
> Sous 2007. Le contenu des controles est bien mis en place dans les
> cellules de destination, mais le message d'erreur sort tout de même.
> Dans mon code, si je désactive l'instruction de sortie de ma boucle
> (GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
> bien traités.
> Je m'interroge donc sur la sortie de ce message.
> Cordialement.
> On 30 nov, 12:21, "michdenis" wrote:
> > Bonjour,
> > Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
> > Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> > For intL = 3 To 15 Step 3
> > C'est la signification de ton message d'erreur !
> > "ElXav" a écrit dans le message de groupe de discus sion :
> >
> > Bonjour la Communauté,
> > En cours de migration d'Office XP vers 2007, je teste mes diverses
> > applications (surtout Access).
> > Ma seule application développée sous Excel XP se plante avec le
> > message d'erreur cité en objet.
> > Voici la portion de code:
> > On Error Resume Next
> > For intL = 3 To 15 Step 3
> > Err.Clear
> > .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Contro ls
> > ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erre ur
> > If Err.Number <> 0 Then
> > MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> > ETPP_NomApplication
> > Me.Controls("TbxProPvc1" & Format(CStr(intL),
> > "00")).SetFocus
> > GoTo Restituer_Fin
> > End If
> > Next intL
> > L'erreur 9 survient, alors que la valeur est bien placée dans la
> > cellule destination.
> > En debug, la feuille de destination est bien active.
> > Dans la fenêtre de debug, les actions suivantes sont valides:
> > .Cells(RngFind.Row, 33 + intL).Select ===> me sél ectionne bien
> > la cellule destination
> > ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> > me renvoie bien la valeur numérique
> > Et en allant au plus simple et plus précis:
> > err.clear
> > .Cells(3, 36).value = "test"
> > ? err.description => me renvoie le texte de l'erreur 9!!!
> > Les mêmes commandes dans un nouveau classeur passent bien.
> > D'avance merci pour vos suggestions.
> > Cordialement.- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
> L'erreur 9, ça fait déjà 2 fois que je t'explique que c'est une
question de "nom" d'objet qu'excel ne trouve pas que ce
soit une feuille ou autre objet!
Je n'ai pas ton application sous les yeux...
L'erreur 9, ça fait déjà 2 fois que je t'explique que c'est une
question de "nom" d'objet qu'excel ne trouve pas que ce
soit une feuille ou autre objet!
L'utilisation de "On Error Resume Next" doit être utilisé
parcimonieusement ! On doit savoir pourquoi on l'utilise...
et dans plusieurs cas, elle ne fait aucun sens si elle permet
de continuer l'exécution d'une procédure alors que la
feuille sur laquelle la procédure doit travailler est absente
du classeur... (ce n'est qu'un exemple)
Vaut mieux utiliser :
'-------------------------------
sub test()
Dim Gestion_Erreur as string
On error goto Gestion_Erreur
'Le code
Exit sub
Gestion_Erreur:
Msgbox Err.Number & ", " & Err.Description
'Et si on veut que le code se poursuivre à ligne
'suivante dans le code...
Resume next
End sub
'-------------------------------
Je ne peux t'en dire plus avec l'information que je dispose!
"ElXav" <el...@free.fr> a écrit dans le message de groupe de discussion :
51d68855-c2a8-4d50-9b9f-61248fd9d...@m20g2000vbp.googlegroups.com...
Michdenis,
J'ai fait tourner le code suivant, comme tu me le suggères.
For intL = 3 To 15 Step 3
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00")))
Next intL
Il ne plante pas.
Le résultat dans la feuille excel est correct.
Alors pourquoi l'objet Err ans mon code original prend la valeur
9??!!??
J'ai placé ces lignes (On error et Err.Number) pour éviter un arrêt du
programme en cas d'anomalie lors de la mise à jour de la feuille
excel.
Pour info, des détails su mon code:
>> On Error Resume Next
J'active l'interception d'erreur pour toutes les lignes suivantes, Le
contrôle d'erreur ayant lieu juste après la mise à jour de la feuil le
excel (transfert de mes données de ma boite de dialogue contenant mes
controles vers la feuille excel (pas pour gérer le For Next ;-) ))
>> For intL = 3 To 15 Step 3
Pour chaque controle à gérer
>> Err.Clear
Raz de l'objet Err. La ligne à monitorer est la suivante
>> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls ("TbxProPvc1" &
>> Format(CStr(intL), "00")))
Cette ligne transfert dans une cellule de la feuille active, le
contenu d'un controle de ma boite de dialogue. Les controles a traiter
sont nommés TbxProPvc103, TbxProPvc106, TbxProPvc109, TbxProPvc112 et
TbxProPvc115.
>> If Err.Number <> 0 Then
Je vérifie que la valeur mise dans la cellule ne provoque pas
d'erreur!
Normalement ca ne devrait pas. En tout cas, sous XP, Err.Number est
toujours à 0.
Le reste est la fin de la boucle, avec un saut à la fin de la
procédure en cas d'erreur.
Si tu as une idée...
Cordialement.
On 30 nov, 14:27, "michdenis" <michde...@hotmail.com> wrote:
> | Le contenu des controles est bien mis en place
> Je ne parlais pas du contenu mais de leur NOM.
> Désactive ta gestion d'erreur
> "On error resume next" et "Err.Clear" et fait
> rouler... D'ailleurs je ne comprends pas en quoi
> c'est ligne de code peut générer une erreur :
> For intL = 3 To 15 Step 3
> Mais au delà de ces commentaires, ton message d'erreur est lié
> au fait qu'excel ne trouve pas (mal orthographier - inexistant)
> le nom du contrôle ou la feuille cités dans la procédure !
> "ElXav" <el...@free.fr> a écrit dans le message de groupe de discussi on :
> af7b2623-91aa-4505-93cc-5277c4788...@p8g2000yqb.googlegroups.com...
> Bonjour,
> Merci, mais ce n'est pas ça.
> Comme je le dis dans mon message.
> En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
> de 2 ans.
> Sous 2007. Le contenu des controles est bien mis en place dans les
> cellules de destination, mais le message d'erreur sort tout de même.
> Dans mon code, si je désactive l'instruction de sortie de ma boucle
> (GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
> bien traités.
> Je m'interroge donc sur la sortie de ce message.
> Cordialement.
> On 30 nov, 12:21, "michdenis" <michde...@hotmail.com> wrote:
> > Bonjour,
> > Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
> > Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> > For intL = 3 To 15 Step 3
> > C'est la signification de ton message d'erreur !
> > "ElXav" <el...@free.fr> a écrit dans le message de groupe de discus sion :
> > 8ca2e6d1-3a35-4af1-b8ae-b0844b3a3...@m26g2000yqb.googlegroups.com...
> > Bonjour la Communauté,
> > En cours de migration d'Office XP vers 2007, je teste mes diverses
> > applications (surtout Access).
> > Ma seule application développée sous Excel XP se plante avec le
> > message d'erreur cité en objet.
> > Voici la portion de code:
> > On Error Resume Next
> > For intL = 3 To 15 Step 3
> > Err.Clear
> > .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Contro ls
> > ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erre ur
> > If Err.Number <> 0 Then
> > MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> > ETPP_NomApplication
> > Me.Controls("TbxProPvc1" & Format(CStr(intL),
> > "00")).SetFocus
> > GoTo Restituer_Fin
> > End If
> > Next intL
> > L'erreur 9 survient, alors que la valeur est bien placée dans la
> > cellule destination.
> > En debug, la feuille de destination est bien active.
> > Dans la fenêtre de debug, les actions suivantes sont valides:
> > .Cells(RngFind.Row, 33 + intL).Select ===> me sél ectionne bien
> > la cellule destination
> > ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> > me renvoie bien la valeur numérique
> > Et en allant au plus simple et plus précis:
> > err.clear
> > .Cells(3, 36).value = "test"
> > ? err.description => me renvoie le texte de l'erreur 9!!!
> > Les mêmes commandes dans un nouveau classeur passent bien.
> > D'avance merci pour vos suggestions.
> > Cordialement.- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
> L'erreur 9, ça fait déjà 2 fois que je t'explique que c'est une
question de "nom" d'objet qu'excel ne trouve pas que ce
soit une feuille ou autre objet!
Je n'ai pas ton application sous les yeux...
L'erreur 9, ça fait déjà 2 fois que je t'explique que c'est une
question de "nom" d'objet qu'excel ne trouve pas que ce
soit une feuille ou autre objet!
L'utilisation de "On Error Resume Next" doit être utilisé
parcimonieusement ! On doit savoir pourquoi on l'utilise...
et dans plusieurs cas, elle ne fait aucun sens si elle permet
de continuer l'exécution d'une procédure alors que la
feuille sur laquelle la procédure doit travailler est absente
du classeur... (ce n'est qu'un exemple)
Vaut mieux utiliser :
'-------------------------------
sub test()
Dim Gestion_Erreur as string
On error goto Gestion_Erreur
'Le code
Exit sub
Gestion_Erreur:
Msgbox Err.Number & ", " & Err.Description
'Et si on veut que le code se poursuivre à ligne
'suivante dans le code...
Resume next
End sub
'-------------------------------
Je ne peux t'en dire plus avec l'information que je dispose!
"ElXav" a écrit dans le message de groupe de discussion :
Michdenis,
J'ai fait tourner le code suivant, comme tu me le suggères.
For intL = 3 To 15 Step 3
.Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls
("TbxProPvc1" & Format(CStr(intL), "00")))
Next intL
Il ne plante pas.
Le résultat dans la feuille excel est correct.
Alors pourquoi l'objet Err ans mon code original prend la valeur
9??!!??
J'ai placé ces lignes (On error et Err.Number) pour éviter un arrêt du
programme en cas d'anomalie lors de la mise à jour de la feuille
excel.
Pour info, des détails su mon code:
>> On Error Resume Next
J'active l'interception d'erreur pour toutes les lignes suivantes, Le
contrôle d'erreur ayant lieu juste après la mise à jour de la feuil le
excel (transfert de mes données de ma boite de dialogue contenant mes
controles vers la feuille excel (pas pour gérer le For Next ;-) ))
>> For intL = 3 To 15 Step 3
Pour chaque controle à gérer
>> Err.Clear
Raz de l'objet Err. La ligne à monitorer est la suivante
>> .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Controls ("TbxProPvc1" &
>> Format(CStr(intL), "00")))
Cette ligne transfert dans une cellule de la feuille active, le
contenu d'un controle de ma boite de dialogue. Les controles a traiter
sont nommés TbxProPvc103, TbxProPvc106, TbxProPvc109, TbxProPvc112 et
TbxProPvc115.
>> If Err.Number <> 0 Then
Je vérifie que la valeur mise dans la cellule ne provoque pas
d'erreur!
Normalement ca ne devrait pas. En tout cas, sous XP, Err.Number est
toujours à 0.
Le reste est la fin de la boucle, avec un saut à la fin de la
procédure en cas d'erreur.
Si tu as une idée...
Cordialement.
On 30 nov, 14:27, "michdenis" wrote:
> | Le contenu des controles est bien mis en place
> Je ne parlais pas du contenu mais de leur NOM.
> Désactive ta gestion d'erreur
> "On error resume next" et "Err.Clear" et fait
> rouler... D'ailleurs je ne comprends pas en quoi
> c'est ligne de code peut générer une erreur :
> For intL = 3 To 15 Step 3
> Mais au delà de ces commentaires, ton message d'erreur est lié
> au fait qu'excel ne trouve pas (mal orthographier - inexistant)
> le nom du contrôle ou la feuille cités dans la procédure !
> "ElXav" a écrit dans le message de groupe de discussi on :
>
> Bonjour,
> Merci, mais ce n'est pas ça.
> Comme je le dis dans mon message.
> En XP ca camrche sans soucis, c'est une appli qui tourne depuis plus
> de 2 ans.
> Sous 2007. Le contenu des controles est bien mis en place dans les
> cellules de destination, mais le message d'erreur sort tout de même.
> Dans mon code, si je désactive l'instruction de sortie de ma boucle
> (GoTo Restituer_Fin), le résultat est correct, mes 5 controles sont
> bien traités.
> Je m'interroge donc sur la sortie de ce message.
> Cordialement.
> On 30 nov, 12:21, "michdenis" wrote:
> > Bonjour,
> > Le nom du contrôle défini par ("TbxProPvc1" & Format(CStr(intL), "00")
> > Existe-t-il réellement ? pour chacun des chiffres dans ta boucle
> > For intL = 3 To 15 Step 3
> > C'est la signification de ton message d'erreur !
> > "ElXav" a écrit dans le message de groupe de discus sion :
> >
> > Bonjour la Communauté,
> > En cours de migration d'Office XP vers 2007, je teste mes diverses
> > applications (surtout Access).
> > Ma seule application développée sous Excel XP se plante avec le
> > message d'erreur cité en objet.
> > Voici la portion de code:
> > On Error Resume Next
> > For intL = 3 To 15 Step 3
> > Err.Clear
> > .Cells(RngFind.Row, 33 + intL) = CDbl(Me.Contro ls
> > ("TbxProPvc1" & Format(CStr(intL), "00"))) <<--- Génère l'erre ur
> > If Err.Number <> 0 Then
> > MsgBox "Donnée incorrecte.", vbExclamation + vbOKOnly,
> > ETPP_NomApplication
> > Me.Controls("TbxProPvc1" & Format(CStr(intL),
> > "00")).SetFocus
> > GoTo Restituer_Fin
> > End If
> > Next intL
> > L'erreur 9 survient, alors que la valeur est bien placée dans la
> > cellule destination.
> > En debug, la feuille de destination est bien active.
> > Dans la fenêtre de debug, les actions suivantes sont valides:
> > .Cells(RngFind.Row, 33 + intL).Select ===> me sél ectionne bien
> > la cellule destination
> > ? CDbl(Me.Controls("TbxProPvc1" & Format(CStr(intL), "00"))) ===>
> > me renvoie bien la valeur numérique
> > Et en allant au plus simple et plus précis:
> > err.clear
> > .Cells(3, 36).value = "test"
> > ? err.description => me renvoie le texte de l'erreur 9!!!
> > Les mêmes commandes dans un nouveau classeur passent bien.
> > D'avance merci pour vos suggestions.
> > Cordialement.- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
| Serais-tu ok pour que je t'envoie mon fichier?
Ok, tu peux utiliser mon adresse Hotmail.
Tu m'indique le nom de la procédure et du module où
est situé la procédure. Je porterai attention qu'à cette
procédure et non à tout le code du fichier.
| Serais-tu ok pour que je t'envoie mon fichier?
Ok, tu peux utiliser mon adresse Hotmail.
Tu m'indique le nom de la procédure et du module où
est situé la procédure. Je porterai attention qu'à cette
procédure et non à tout le code du fichier.
| Serais-tu ok pour que je t'envoie mon fichier?
Ok, tu peux utiliser mon adresse Hotmail.
Tu m'indique le nom de la procédure et du module où
est situé la procédure. Je porterai attention qu'à cette
procédure et non à tout le code du fichier.
| Serais-tu ok pour que je t'envoie mon fichier?
Ok, tu peux utiliser mon adresse Hotmail.
Tu m'indique le nom de la procédure et du module où
est situé la procédure. Je porterai attention qu'à cette
procédure et non à tout le code du fichier.
| Serais-tu ok pour que je t'envoie mon fichier?
Ok, tu peux utiliser mon adresse Hotmail.
Tu m'indique le nom de la procédure et du module où
est situé la procédure. Je porterai attention qu'à cette
procédure et non à tout le code du fichier.
| Serais-tu ok pour que je t'envoie mon fichier?
Ok, tu peux utiliser mon adresse Hotmail.
Tu m'indique le nom de la procédure et du module où
est situé la procédure. Je porterai attention qu'à cette
procédure et non à tout le code du fichier.