Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes les
feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes les
feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes les
feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
J'ai créé un nouveau classeur minimal avec une userform et une listbox. Ca
fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes les
feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
J'ai créé un nouveau classeur minimal avec une userform et une listbox. Ca
fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes les
feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
J'ai créé un nouveau classeur minimal avec une userform et une listbox. Ca
fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes les
feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51
J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O9$Z4WmWFHA.3928@TK2MSFTNGP15.phx.gbl...
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51
J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un userform,
qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec Additem
pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai la
même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis et
regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O9$Z4WmWFHA.3928@TK2MSFTNGP15.phx.gbl...
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51
J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché appartient-il
à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché appartient-il
à ton classeur origine ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%233GhwPtWFHA.2700@TK2MSFTNGP12.phx.gbl...
Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O9$Z4WmWFHA.3928@TK2MSFTNGP15.phx.gbl...
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51
J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché appartient-il
à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une listbox.
Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non toutes
les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée fait
partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si oui,
c'est effectivement le nom de l'onglet qui fait parti de mon classeur
d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si oui,
c'est effectivement le nom de l'onglet qui fait parti de mon classeur
d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51
Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%233GhwPtWFHA.2700@TK2MSFTNGP12.phx.gbl...
Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O9$Z4WmWFHA.3928@TK2MSFTNGP15.phx.gbl...
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51
J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si oui,
c'est effectivement le nom de l'onglet qui fait parti de mon classeur
d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les mêmes
noms de feuilles.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si oui,
c'est effectivement le nom de l'onglet qui fait parti de mon classeur
d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les mêmes
noms de feuilles.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O4oeIJuWFHA.1240@TK2MSFTNGP14.phx.gbl...
J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si oui,
c'est effectivement le nom de l'onglet qui fait parti de mon classeur
d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51
Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%233GhwPtWFHA.2700@TK2MSFTNGP12.phx.gbl...
Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O9$Z4WmWFHA.3928@TK2MSFTNGP15.phx.gbl...
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51
J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les mêmes
noms de feuilles.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si oui,
c'est effectivement le nom de l'onglet qui fait parti de mon classeur
d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors de
la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième tentative
de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que j'ai
la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été transmis
et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir la
touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci beaucoup pour ta réponse rapide,
Cela fonctionne au poil avec ces quelques modifs:
Private Sub CommandButton1_Click()Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
Sub CommandButton1_Click()
UserForm1.Hide
Workbooks(1).ActivateWith ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(1).Activate 'active le classeur source
End IfNext i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Une dernière chose, comment peut-on supprimer les feuilles vides qui sont
par défaut dans le classeur créé ? pour finioler !! pour éviter d'envoyer
un fichier avec des onglets vides.
Merci encore pour tout
Cordialement
Ga51En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les
mêmes noms de feuilles.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si
oui, c'est effectivement le nom de l'onglet qui fait parti de mon
classeur d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors
de la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième
tentative de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que
j'ai la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été
transmis et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir
la touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci beaucoup pour ta réponse rapide,
Cela fonctionne au poil avec ces quelques modifs:
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
Sub CommandButton1_Click()
UserForm1.Hide
Workbooks(1).Activate
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(1).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Une dernière chose, comment peut-on supprimer les feuilles vides qui sont
par défaut dans le classeur créé ? pour finioler !! pour éviter d'envoyer
un fichier avec des onglets vides.
Merci encore pour tout
Cordialement
Ga51
En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les
mêmes noms de feuilles.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O4oeIJuWFHA.1240@TK2MSFTNGP14.phx.gbl...
J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si
oui, c'est effectivement le nom de l'onglet qui fait parti de mon
classeur d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51
Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%233GhwPtWFHA.2700@TK2MSFTNGP12.phx.gbl...
Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors
de la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième
tentative de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O9$Z4WmWFHA.3928@TK2MSFTNGP15.phx.gbl...
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51
J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que
j'ai la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été
transmis et regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir
la touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
Merci beaucoup pour ta réponse rapide,
Cela fonctionne au poil avec ces quelques modifs:
Private Sub CommandButton1_Click()Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
Sub CommandButton1_Click()
UserForm1.Hide
Workbooks(1).ActivateWith ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(1).Activate 'active le classeur source
End IfNext i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Une dernière chose, comment peut-on supprimer les feuilles vides qui sont
par défaut dans le classeur créé ? pour finioler !! pour éviter d'envoyer
un fichier avec des onglets vides.
Merci encore pour tout
Cordialement
Ga51En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les
mêmes noms de feuilles.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si
oui, c'est effectivement le nom de l'onglet qui fait parti de mon
classeur d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors
de la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième
tentative de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que
j'ai la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été
transmis et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir
la touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
En remplaçant :
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
par :
With Workbooks("LeNomQueTuVeux.xls")
Application.DisplayAlerts = False
.Sheets("Feuil1").Delete
.Sheets("Feuil2").Delete
.Sheets("Feuil3").Delete
Application.DisplayAlerts = True
.Save
.Close
End With
si tes classeurs vierges ont trois feuilles.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci beaucoup pour ta réponse rapide,
Cela fonctionne au poil avec ces quelques modifs:
Private Sub CommandButton1_Click()Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
Sub CommandButton1_Click()
UserForm1.Hide
Workbooks(1).ActivateWith ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(1).Activate 'active le classeur source
End IfNext i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Une dernière chose, comment peut-on supprimer les feuilles vides qui sont
par défaut dans le classeur créé ? pour finioler !! pour éviter d'envoyer
un fichier avec des onglets vides.
Merci encore pour tout
Cordialement
Ga51En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les
mêmes noms de feuilles.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si
oui, c'est effectivement le nom de l'onglet qui fait parti de mon
classeur d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors
de la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième
tentative de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que
j'ai la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été
transmis et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir
la touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
En remplaçant :
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
par :
With Workbooks("LeNomQueTuVeux.xls")
Application.DisplayAlerts = False
.Sheets("Feuil1").Delete
.Sheets("Feuil2").Delete
.Sheets("Feuil3").Delete
Application.DisplayAlerts = True
.Save
.Close
End With
si tes classeurs vierges ont trois feuilles.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e0RmbquWFHA.3280@TK2MSFTNGP09.phx.gbl...
Merci beaucoup pour ta réponse rapide,
Cela fonctionne au poil avec ces quelques modifs:
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
Sub CommandButton1_Click()
UserForm1.Hide
Workbooks(1).Activate
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(1).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Une dernière chose, comment peut-on supprimer les feuilles vides qui sont
par défaut dans le classeur créé ? pour finioler !! pour éviter d'envoyer
un fichier avec des onglets vides.
Merci encore pour tout
Cordialement
Ga51
En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les
mêmes noms de feuilles.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O4oeIJuWFHA.1240@TK2MSFTNGP14.phx.gbl...
J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si
oui, c'est effectivement le nom de l'onglet qui fait parti de mon
classeur d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51
Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%233GhwPtWFHA.2700@TK2MSFTNGP12.phx.gbl...
Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors
de la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième
tentative de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51
Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
O9$Z4WmWFHA.3928@TK2MSFTNGP15.phx.gbl...
Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51
J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
e966FIlWFHA.1468@tk2msftngp13.phx.gbl...
Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51
Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que
j'ai la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été
transmis et regarde ce que ca donne.
A+
J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51
Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir
la touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
upaVZ4iWFHA.612@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51
Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%23l0OY0hWFHA.2664@TK2MSFTNGP15.phx.gbl...
Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
Ga
Bonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" <ga51@hotmail.fr> a écrit dans le message de news:
%2304hDVhWFHA.2420@TK2MSFTNGP12.phx.gbl...
Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.
En remplaçant :
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
par :
With Workbooks("LeNomQueTuVeux.xls")
Application.DisplayAlerts = False
.Sheets("Feuil1").Delete
.Sheets("Feuil2").Delete
.Sheets("Feuil3").Delete
Application.DisplayAlerts = True
.Save
.Close
End With
si tes classeurs vierges ont trois feuilles.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci beaucoup pour ta réponse rapide,
Cela fonctionne au poil avec ces quelques modifs:
Private Sub CommandButton1_Click()Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
UserForm1.Show
End Sub
Sub CommandButton1_Click()
UserForm1.Hide
Workbooks(1).ActivateWith ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(1).Activate 'active le classeur source
End IfNext i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Une dernière chose, comment peut-on supprimer les feuilles vides qui sont
par défaut dans le classeur créé ? pour finioler !! pour éviter d'envoyer
un fichier avec des onglets vides.
Merci encore pour tout
Cordialement
Ga51En plein dans le mille :
Code du bouton de la feuille "Feuil4" :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(2).Activate 'active le classeur source
UserForm1.Show
End Sub
et le code du bouton de l'userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Workbooks(2).Activate 'active le classeur source
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Le code ne fonctionnait que parce que les deux classeurs avaient les
mêmes noms de feuilles.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:J'avais déjà supprimé la ligne MsgBox .list(i).
De quel nom affiché parles-tu ? de celui de l'onglet sélectionné ? si
oui, c'est effectivement le nom de l'onglet qui fait parti de mon
classeur d'origine.
Ne serait-ce pas un problème de classeur actif ?
Lors de la copie, quel classeur doit être actif, le classeur d'origine ou
le classeur de sauvegarde ?
L'instruction Workbooks(1).Activate correspond à quel classeur ?
Merci encore de t'occuper de "mon cas"
Cordialement.
Ga51Si tu n'as pas ôté la ligne "msgbox .list(i)", le nom affiché
appartient-il à ton classeur origine ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci beaucoup pour ta réponse
C'est exactement ce que je voulais
Cela fonctionne impec avec un classeur test.
Mais j'ai une erreur: "L'indice n'appartient pas à la sélection" lors
de la copie du 2ième onglet sélectionné sur mon classeur. Le 1er onglet
sélectionné se copie parfaitement.
Une exécution pas à pas m'arrête sur la ligne lors de la 2ième
tentative de copie:
Sheets(.List(i)).Copy Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
Mes onglets ne sont pas protégés, ils ont simplement des boutons de
contrôles et des mise en formes.
Pourquoi ce bug ?
Cordialement
Ga51Bonjour.
Code du bouton de Feuil3 :
Private Sub CommandButton1_Click()
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="LeNomQueTuVeux.xls"
Workbooks(1).Activate
UserForm1.Show
End Sub
Code du bouton du userform :
Private Sub CommandButton1_Click()
UserForm1.Hide
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
Sheets(.List(i)).Copy
Before:=Workbooks("LeNomQueTuVeux.xls").Sheets(1)
End If
Next i
End With
Workbooks("LeNomQueTuVeux.xls").Save
Workbooks("LeNomQueTuVeux.xls").Close
End Sub
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
O9$Merci pour ton exemple, il fonctionne super bien en effet.
Pour aller plus loin, en fait je voulais sauvegarder les onglets
sélectionnés dans un nouveau classeur et le renommer avec:
ActiveWorkbook.SaveAs Filename:= ...etc.. (pour envoi futur par mail)
plutôt que d'envoyer ces onglets dans un classeur déjà existant.
Car dans ma configuration de travail, cela sera impossible.
Pourrais-tu m'aider pour la syntaxe ?
Merci beaucoup de ton aide
Cordialement.
Ga51J'ai créé un nouveau classeur minimal avec une userform et une
listbox. Ca fonctionne sans problème. Je te l'envoie.
http://cjoint.com/?fqwWPpRgFp
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci d'avoir insister !
En effet cela fonctionne (je n'avais pas le classeur cible
ouvert!)...
Mais si je le transpose dans ma macro, cela ne fonctionne pas.
Sans doute ce sont les propriétés de ma listbox, créée dans un
userform, qui ne correspondent pas ?
j'ai mis les propriétés à MultiSelect, je remplis la listbox avec
Additem pour l'alimenter du noms des onglets.
Qq'un pour m'aider svp
Merci beaucoup
Cordialement.
Ga51Bonjour,
pas de pb pour moi non plus avec le fichier de Daniel alors que
j'ai la même config que toi. Il doit y avoir autre chose.
Fais une éxécution en mode pas à pas du fichier qui t'a été
transmis et regarde ce que ca donne.
A+J'ai Excel 2000 sur win xp pro
Merci en tout cas pour tes réponses.
Cordialement
Ga51Problème de version ?
La listbox est configurée de telle manière qu'il faut maintenir
la touche CTRL enfoncée pour faire une seconde sélection.
Sinon il va falloir que les VRAIS gourous se penchent sur ton
problème.
Cordialement.
Daniel
"ga51" a écrit dans le message de news:Merci Daniel pour le classeur de test.
Mais j'ai toujours la même erreur sur ton classeur.(l'objet
n'appartient pas a la selection)
De plus dans la msgbox, il n'y a qu'1 seule feuille et non
toutes les feuilles sélectionnées.
Manquerait-il qqchose ?
Cordialement
Ga51Je t'envoie le classeur qui m'a servi à faire le test.
http://cjoint.com/?fqqZYIv66K
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Bonjour,
Merci pour ta réponse,
Oui tous les onglets sont dans le classeur ouvert et donc
actif.
Cordialement
GaBonjour.
J'ai pas trop étudié ton code; est-ce que la feuille copiée
fait partie du classeur actif ?
Cordialement.
Daniel
"ga51" a écrit dans le message de news:
%Merci Daniel pour ta réponse,
mais j'ai une erreur sur la ligne sheets(.List(i)).copy:
n'appartient pas à la sélection.
Merci encore pour ton aide,
Cordialement.