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:nomsauvegardesvmDocFch.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
==> ICI L'ERREUR : 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 à 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:nomsauvegardesvmDocFch.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
==> ICI L'ERREUR : 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 à 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:nomsauvegardesvmDocFch.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
==> ICI L'ERREUR : 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
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
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 code...c'est encore mieux si dans ton
message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
Salutations!
"pireyzend" a écrit dans le message de news:
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:nomsauvegardesvmDocFch.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
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
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 code...c'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:nomsauvegardesvmDocFch.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
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
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 code...c'est encore mieux si dans ton
message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
Salutations!
"pireyzend" a écrit dans le message de news:
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:nomsauvegardesvmDocFch.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
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
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 code...c'est encore mieux si dans ton
message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
Salutations!
"pireyzend" a écrit dans le message de news:
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:nomsauvegardesvmDocFch.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
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
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 code...c'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:nomsauvegardesvmDocFch.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
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
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 code...c'est encore mieux si dans ton
message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
Salutations!
"pireyzend" a écrit dans le message de news:
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:nomsauvegardesvmDocFch.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 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" a écrit dans le message de news:
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" a écrit dans le message de news:
%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 code...c'est encore mieux si dans ton
message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
Salutations!
"pireyzend" a écrit dans le message de news:
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:nomsauvegardesvmDocFch.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 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 code...c'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:nomsauvegardesvmDocFch.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 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" a écrit dans le message de news:
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" a écrit dans le message de news:
%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 code...c'est encore mieux si dans ton
message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
Salutations!
"pireyzend" a écrit dans le message de news:
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:nomsauvegardesvmDocFch.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 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" a écrit dans le message de news:
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" a écrit dans le message de news:
%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 code...c'est encore mieux si dans ton
message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
Salutations!
"pireyzend" a écrit dans le message de news:
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:nomsauvegardesvmDocFch.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 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 code...c'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:nomsauvegardesvmDocFch.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 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" a écrit dans le message de news:
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" a écrit dans le message de news:
%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 code...c'est encore mieux si dans ton
message tu peux identifier CLAIREMENT où tu éprouves une difficulté.
Salutations!
"pireyzend" a écrit dans le message de news:
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:nomsauvegardesvmDocFch.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