probleme de macro d'enregistrement de feuille dans un rep
Le
pireyzend
Toujours pas solutionné.merci pour vos conseils
Bonjour, et merci pour ton aide.
Malheureusement ce que tu me dit ne fonctionne pas. Même message d'erreur.
Ce qui m'etonne le plus est que cette même macro, dans un autre classeur,
fonctionne parfaitement
Salutations
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uPsurPtRGHA.4956@TK2MSFTNGP09.phx.gbl
> Bonjour pireyzend
>
>
> | Windows("vmDocFch").Activate
>
> Si ton fichier a déjà été enregistré une fois, tu dois inscrire aussi
> l'extension du fichier
>
> Windows("vmDocFch.xls").Activate
>
> Il est préférable d'utiliser la collection Workbooks pour une question de
> lisibilité
> Workbooks("vmDocFch.xls").Activate
>
>
>
> Salutations!
>
>
>
>
>
>
> "pireyzend" <pireyzend@free.fr> a écrit dans le message de news:
> e7r4KtsRGHA.5092@TK2MSFTNGP11.phx.gbl
> Voila, j'ai mis ou ce produit le "plantage"
>
> amicalement
>
> Workbooks.Add
>>
>> ActiveWorkbook.SaveAs Filename:=vmDocChm, _
>>
>> FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
>>
>> ReadOnlyRecommended:úlse, CreateBackup:úlse
>>
>> Windows("F-excel.xls").Activate
>>
>> Sheets("Imp").Select
>>
>> Cells.Select
>>
>> Selection.Copy
>>
>> > c'est ici le plantage : Windows("vmDocFch").Activate
>
>
>
>
> "michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
> %2396lX7pRGHA.5500@TK2MSFTNGP12.phx.gbl
>> Bonjour pireyzend,
>>
>> | message d'erreur 9 : "l'indice n'appartiens pas a la selection"
>>
>> Ce message est généré lorsque la référence à un objet est incorrect
>> Exemple : Worksheets("Feuil25")..
>> Si le classeur n'a aucune feuille ayant le nom d'onglet "Feuil25"), une
>> erreur de type 9 est générée.
>>
>> En conséquence, sur la ligne mise en surbrillance jaune au moment de
>> l'exécution il devrait être assez facile de vérifier quelle référence
>> à
>> un objet est fautif.
>>
>> P.-S. C'est bien de publier son codec'est encore mieux si dans ton
>> message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
>>
>>
>> Salutations!
>>
>>
>>
>>
>>
>> "pireyzend" <pireyzend@free.fr> a écrit dans le message de news:
>> O43PxNhRGHA.4792@TK2MSFTNGP14.phx.gbl
>> Bonjour à tous,
>>
>> J'ai un problème que je comprends pas sur une macro.
>> J'explique le problème et met le code vba ci-apres.
>>
>> Ce qui est en jaune indique l'endroit ou la macro "plante" et me met le
>> message d'erreur 9 : "l'indice n'appartiens pas a la selection"
>> vmDocFch, pointe sur une cellule qui donne un adressage d'enregistrement
>> :
>> exemple "nom client Nxxx"
>> vmDocChm indique l'endroit d'enregistrement : exemple
>> "c:om\sauvegardes\vmDocFch.xls"
>>
>> ça enregistre bien dans le rep de destination un classeur nommé comme
>> "vmDocFch.xls", mais c'est une feuille blanche et la macro va pas plus
>> loin
>> que ce que j'ai indiqué en jaune sur la copie de la macro ci-dessous.
>>
>> Ou est l'erreur ?
>>
>> merci
>>
>> '***Validation du Document
>>
>> Sub DocumentValider()
>>
>> Dim vNbreImp As Variant
>>
>> Dim vmDocFch As Variant
>>
>> Dim vmDocChm As Variant
>>
>> vmDocFch = Range("vmDocFch")
>>
>> vmDocChm = Range("vmDocChm")
>>
>> 'Conditions Validation
>>
>> 'Sur Date
>>
>> If Range("vnDocumentDateDoc") = "" Then
>>
>> MsgBox "Date du Document non renseignée."
>>
>> Range("vnDocumentDateDoc").Select
>>
>> Exit Sub
>>
>> End If
>>
>> 'Sur N°
>>
>> If Range("vnDocumentNumDoc") = "" Then
>>
>> MsgBox "Numéro du Document non renseigné."
>>
>> Range("vnDocumentNumDoc").Select
>>
>> Exit Sub
>>
>> End If
>>
>> 'Imprimer Document
>>
>> 'Nbre de copie à imprimer
>>
>> vNbreImp = InputBox("Nombre d'exemplaire à imprimer :", "Impression
>> Document", 1)
>>
>> If vNbreImp <= 0 Then GoTo 5
>>
>> If IsNumeric(vNbreImp) Then
>>
>> GoTo 10
>>
>> Else: Do Until IsNumeric(vNbreImp)
>>
>> 5
>>
>> MsgBox "La valeur doit être un nombre entier et > 0"
>>
>> vNbreImp = InputBox("Nombre d'exemplaire à imprimer :", "Impression
>> Document", 1)
>>
>> Loop
>>
>> GoTo 10
>>
>> End If
>>
>> 10
>>
>> Sheets("Imp").Select
>>
>> ActiveWindow.SelectedSheets.PrintOut Copies:=vNbreImp
>>
>> 'Copie Imp/Fichier
>>
>> 'Condition garder une copie
>>
>> If Range("vnDossierOptCopieDoc") = "Non" Then GoTo 20
>>
>> 'Condition creer une copie
>>
>> If Range("vnDossierOptCopieDoc") = "Oui" Then
>>
>> Workbooks.Add
>>
>> ActiveWorkbook.SaveAs Filename:=vmDocChm, _
>>
>> FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
>>
>> ReadOnlyRecommended:úlse, CreateBackup:úlse
>>
>> Windows("F-excel.xls").Activate
>>
>> Sheets("Imp").Select
>>
>> Cells.Select
>>
>> Selection.Copy
>>
>> Windows("vmDocFch").Activate
>>
>> Cells.Select
>>
>> 'copier les valeurs uniquement
>>
>> Selection.PasteSpecial Paste:=xlValues, Operation:= _
>>
>> xlNone, SkipBlanks:úlse, Transpose:úlse
>>
>> 'copier les formats uniquement
>>
>> Selection.PasteSpecial Paste:=xlFormats, Operation:= _
>>
>> xlNone, SkipBlanks:úlse, Transpose:úlse
>>
>> Range("a1").Select
>>
>> Application.CutCopyMode = False
>>
>> 'Enregistrer et Fermer la copie
>>
>> ActiveWorkbook.Save
>>
>> ActiveWorkbook.Close
>>
>> GoTo 20
>>
>> End If
>>
>> 20
>>
>> Windows("F-Excel.xls").Activate
>>
>>
>>
>> Range("chpDocumentDesignation").Select
>>
>> Selection.ClearContents
>>
>> 'Quantité
>>
>> Range("chpDocumentQuantite").Select
>>
>> Selection.ClearContents
>>
>> 'Montant HT
>>
>> 'Range("chpDocumentMontantHT").Select
>>
>> 'Selection.ClearContents
>>
>> 'Code TVA
>>
>> Range("chpDocumentCodeTva").Select
>>
>> Selection.ClearContents
>>
>> 'Prix Unitaires
>>
>> Range("chpDocumentPU").Select
>>
>> Selection.ClearContents
>>
>> 'UV
>>
>> Range("chpDocumentUV").Select
>>
>> Selection.ClearContents
>>
>> 'Retour
>>
>> Range("a1").Select
>>
>> End Sub
Bonjour, et merci pour ton aide.
Malheureusement ce que tu me dit ne fonctionne pas. Même message d'erreur.
Ce qui m'etonne le plus est que cette même macro, dans un autre classeur,
fonctionne parfaitement
Salutations
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uPsurPtRGHA.4956@TK2MSFTNGP09.phx.gbl
> Bonjour pireyzend
>
>
> | Windows("vmDocFch").Activate
>
> Si ton fichier a déjà été enregistré une fois, tu dois inscrire aussi
> l'extension du fichier
>
> Windows("vmDocFch.xls").Activate
>
> Il est préférable d'utiliser la collection Workbooks pour une question de
> lisibilité
> Workbooks("vmDocFch.xls").Activate
>
>
>
> Salutations!
>
>
>
>
>
>
> "pireyzend" <pireyzend@free.fr> a écrit dans le message de news:
> e7r4KtsRGHA.5092@TK2MSFTNGP11.phx.gbl
> Voila, j'ai mis ou ce produit le "plantage"
>
> amicalement
>
> Workbooks.Add
>>
>> ActiveWorkbook.SaveAs Filename:=vmDocChm, _
>>
>> FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
>>
>> ReadOnlyRecommended:úlse, CreateBackup:úlse
>>
>> Windows("F-excel.xls").Activate
>>
>> Sheets("Imp").Select
>>
>> Cells.Select
>>
>> Selection.Copy
>>
>> > c'est ici le plantage : Windows("vmDocFch").Activate
>
>
>
>
> "michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
> %2396lX7pRGHA.5500@TK2MSFTNGP12.phx.gbl
>> Bonjour pireyzend,
>>
>> | message d'erreur 9 : "l'indice n'appartiens pas a la selection"
>>
>> Ce message est généré lorsque la référence à un objet est incorrect
>> Exemple : Worksheets("Feuil25")..
>> Si le classeur n'a aucune feuille ayant le nom d'onglet "Feuil25"), une
>> erreur de type 9 est générée.
>>
>> En conséquence, sur la ligne mise en surbrillance jaune au moment de
>> l'exécution il devrait être assez facile de vérifier quelle référence
>> à
>> un objet est fautif.
>>
>> P.-S. C'est bien de publier son codec'est encore mieux si dans ton
>> message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
>>
>>
>> Salutations!
>>
>>
>>
>>
>>
>> "pireyzend" <pireyzend@free.fr> a écrit dans le message de news:
>> O43PxNhRGHA.4792@TK2MSFTNGP14.phx.gbl
>> Bonjour à tous,
>>
>> J'ai un problème que je comprends pas sur une macro.
>> J'explique le problème et met le code vba ci-apres.
>>
>> Ce qui est en jaune indique l'endroit ou la macro "plante" et me met le
>> message d'erreur 9 : "l'indice n'appartiens pas a la selection"
>> vmDocFch, pointe sur une cellule qui donne un adressage d'enregistrement
>> :
>> exemple "nom client Nxxx"
>> vmDocChm indique l'endroit d'enregistrement : exemple
>> "c:om\sauvegardes\vmDocFch.xls"
>>
>> ça enregistre bien dans le rep de destination un classeur nommé comme
>> "vmDocFch.xls", mais c'est une feuille blanche et la macro va pas plus
>> loin
>> que ce que j'ai indiqué en jaune sur la copie de la macro ci-dessous.
>>
>> Ou est l'erreur ?
>>
>> merci
>>
>> '***Validation du Document
>>
>> Sub DocumentValider()
>>
>> Dim vNbreImp As Variant
>>
>> Dim vmDocFch As Variant
>>
>> Dim vmDocChm As Variant
>>
>> vmDocFch = Range("vmDocFch")
>>
>> vmDocChm = Range("vmDocChm")
>>
>> 'Conditions Validation
>>
>> 'Sur Date
>>
>> If Range("vnDocumentDateDoc") = "" Then
>>
>> MsgBox "Date du Document non renseignée."
>>
>> Range("vnDocumentDateDoc").Select
>>
>> Exit Sub
>>
>> End If
>>
>> 'Sur N°
>>
>> If Range("vnDocumentNumDoc") = "" Then
>>
>> MsgBox "Numéro du Document non renseigné."
>>
>> Range("vnDocumentNumDoc").Select
>>
>> Exit Sub
>>
>> End If
>>
>> 'Imprimer Document
>>
>> 'Nbre de copie à imprimer
>>
>> vNbreImp = InputBox("Nombre d'exemplaire à imprimer :", "Impression
>> Document", 1)
>>
>> If vNbreImp <= 0 Then GoTo 5
>>
>> If IsNumeric(vNbreImp) Then
>>
>> GoTo 10
>>
>> Else: Do Until IsNumeric(vNbreImp)
>>
>> 5
>>
>> MsgBox "La valeur doit être un nombre entier et > 0"
>>
>> vNbreImp = InputBox("Nombre d'exemplaire à imprimer :", "Impression
>> Document", 1)
>>
>> Loop
>>
>> GoTo 10
>>
>> End If
>>
>> 10
>>
>> Sheets("Imp").Select
>>
>> ActiveWindow.SelectedSheets.PrintOut Copies:=vNbreImp
>>
>> 'Copie Imp/Fichier
>>
>> 'Condition garder une copie
>>
>> If Range("vnDossierOptCopieDoc") = "Non" Then GoTo 20
>>
>> 'Condition creer une copie
>>
>> If Range("vnDossierOptCopieDoc") = "Oui" Then
>>
>> Workbooks.Add
>>
>> ActiveWorkbook.SaveAs Filename:=vmDocChm, _
>>
>> FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
>>
>> ReadOnlyRecommended:úlse, CreateBackup:úlse
>>
>> Windows("F-excel.xls").Activate
>>
>> Sheets("Imp").Select
>>
>> Cells.Select
>>
>> Selection.Copy
>>
>> Windows("vmDocFch").Activate
>>
>> Cells.Select
>>
>> 'copier les valeurs uniquement
>>
>> Selection.PasteSpecial Paste:=xlValues, Operation:= _
>>
>> xlNone, SkipBlanks:úlse, Transpose:úlse
>>
>> 'copier les formats uniquement
>>
>> Selection.PasteSpecial Paste:=xlFormats, Operation:= _
>>
>> xlNone, SkipBlanks:úlse, Transpose:úlse
>>
>> Range("a1").Select
>>
>> Application.CutCopyMode = False
>>
>> 'Enregistrer et Fermer la copie
>>
>> ActiveWorkbook.Save
>>
>> ActiveWorkbook.Close
>>
>> GoTo 20
>>
>> End If
>>
>> 20
>>
>> Windows("F-Excel.xls").Activate
>>
>>
>>
>> Range("chpDocumentDesignation").Select
>>
>> Selection.ClearContents
>>
>> 'Quantité
>>
>> Range("chpDocumentQuantite").Select
>>
>> Selection.ClearContents
>>
>> 'Montant HT
>>
>> 'Range("chpDocumentMontantHT").Select
>>
>> 'Selection.ClearContents
>>
>> 'Code TVA
>>
>> Range("chpDocumentCodeTva").Select
>>
>> Selection.ClearContents
>>
>> 'Prix Unitaires
>>
>> Range("chpDocumentPU").Select
>>
>> Selection.ClearContents
>>
>> 'UV
>>
>> Range("chpDocumentUV").Select
>>
>> Selection.ClearContents
>>
>> 'Retour
>>
>> Range("a1").Select
>>
>> End Sub

Poser une question


J'avais tout simplement omis de mettre l'extension ".xls" sur la cellule
nommée : vmDocFch
merci a michdenis qui m'a mis sur la piste
amicalement all
"pireyzend"