OVH Cloud OVH Cloud

VBA : enregistrer chaque onglet.

16 réponses
Avatar
Patrick BASTARD
Bonjour, vous.

Je bute sur un problème sans doute simple à résoudre, mais à ma connaissance
pas documenté...
j'ai besoin de vos lumières, ou d'un lien que je n'aurais pas trouvé :

Un classeur avec x onglets.
Comment transformer chacune des onglets de ce classeur en un classeur mono
onglet , en conservant pour chacun de ces nouveaux classeurs le nom de l'
onglet correspondant ?

Le but :
J'ai paramétré des infos qui doivent être importées sur une appli interne,
et lors de l'import, cette appli me demande le nom du fichier à importer,
pas le nom de l'onglet.
En manuel, je sais faire mais c'est fastidieux...

Merci par avance pour vos propositions zéclairées.

Win XP,
Excel 2000 - SP3

--
Bien cordialement,
P. Bastard

6 réponses

1 2
Avatar
LSteph
donc rajouter ainsi:

Sub deploie()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Sheets
sh.Visible = xlSheetVisible
sh.Copy
ActiveWorkbook.SaveAs sh.Name
Next
End Sub

'lSteph
"Patrick BASTARD" a écrit dans le
message de news: %
Bonjour, vous.

Je bute sur un problème sans doute simple à résoudre, mais à ma
connaissance pas documenté...
j'ai besoin de vos lumières, ou d'un lien que je n'aurais pas trouvé :

Un classeur avec x onglets.
Comment transformer chacune des onglets de ce classeur en un classeur mono
onglet , en conservant pour chacun de ces nouveaux classeurs le nom de l'
onglet correspondant ?

Le but :
J'ai paramétré des infos qui doivent être importées sur une appli interne,
et lors de l'import, cette appli me demande le nom du fichier à importer,
pas le nom de l'onglet.
En manuel, je sais faire mais c'est fastidieux...

Merci par avance pour vos propositions zéclairées.

Win XP,
Excel 2000 - SP3

--
Bien cordialement,
P. Bastard



Avatar
Patrick BASTARD
Vraiment désolé de vous avoir fait perdre votre temps.
;-(

J'avais en effet une feuille masquée, contenant des instructions pour le
paramétrage. Et je l'avais oubliée.

Merci en tous cas de votre aide.
là, ça va rouler.
;-)

Bien cordialement,

--
Bien cordialement,
P. Bastard



donc rajouter ainsi:

Sub deploie()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Sheets
sh.Visible = xlSheetVisible
sh.Copy
ActiveWorkbook.SaveAs sh.Name
Next
End Sub

'lSteph
"Patrick BASTARD" a écrit dans le
message de news: %
Bonjour, vous.

Je bute sur un problème sans doute simple à résoudre, mais à ma
connaissance pas documenté...
j'ai besoin de vos lumières, ou d'un lien que je n'aurais pas trouvé
: Un classeur avec x onglets.
Comment transformer chacune des onglets de ce classeur en un
classeur mono onglet , en conservant pour chacun de ces nouveaux
classeurs le nom de l' onglet correspondant ?

Le but :
J'ai paramétré des infos qui doivent être importées sur une appli
interne, et lors de l'import, cette appli me demande le nom du
fichier à importer, pas le nom de l'onglet.
En manuel, je sais faire mais c'est fastidieux...

Merci par avance pour vos propositions zéclairées.

Win XP,
Excel 2000 - SP3

--
Bien cordialement,
P. Bastard




Avatar
Philippe.R
Re,
N'y aurait il pas un autre classeur ouvert, par zazaR ?
--
Amicales Salutations
XL 97 / 2000 / 2002
Préférez suivre facilement sur le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Patrick BASTARD" a écrit dans le message de news:

Re, *Philippe*

La procédure est bien dans le classseur d'origine contenant les onglets à copier, les classeurs à
venir ne sont pas encore créés.


--
Bien cordialement,
P. Bastard


Encore une précision, c'est bien dans un module du classeur dont les
onglets sont à copier que se trouve la procédure ?

"Patrick BASTARD" a écrit dans
le message de news: eR%
Bonjour, *Philippe.R*


La procédure est bien dans un module ordinaire ?
Oui.


Quels sont ces astérisques qui encadrent Sheets(x).Copy ?
Juste pour mettre en gras la ligne qui provoque l'erreur : pas

d'astérisque dans le code. Pour info, le nom des onglets est du type : aaaaxx (ex : LUCP12)
J'ai bien ôté option explicit, n'auant pas défini le x

Merci de ton aide.


--
Bien cordialement,
P. Bastard





'MPFE le 14/05/2005 par Philippe Raulet
Sub sauveonglet()

Dim leNom As String
For x = 1 To Sheets.Count
*Sheets(x).Copy*
leNom = Sheets(1).Name
ChDir "C:Documents and SettingsPatrickMes
documents1PB1Projet GESTPLAN" ActiveWorkbook.SaveAs
Filename:= _ "C:Documents and SettingsPatrickMes
documents1PB1Projet GESTPLAN" & leNom & ".xls" _ ,
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
ThisWorkbook.Activate Next x
End Sub

me renvoie une erreur 1004 : La méthode copy de la classe Worksheet
a échoué.
====================================================================== >>>>>
Sub deploie()
'LSteph
Dim sh As Worksheet
For Each sh In ThisWorkbook.Sheets
*sh.Copy*
ActiveWorkbook.SaveAs sh.Name
Next
End Sub
me renvoie une erreur 1004 : La méthode copy de l'objet Worshhet a
échoué. J'ai essayé avec l'enregistreur, mais sans succcès.
(select et move, mais pour renommer ?)

Merci à vous deux pour votre aide (passée et à venir).


--
Bien cordialement,
P. Bastard



Comment transformer chacune des onglets de ce classeur en un
classeur mono onglet , en conservant pour chacun de ces nouveaux
classeurs le nom de l' onglet correspondant ?

Win XP,
Excel 2000 - SP3














Avatar
LSteph
Au contraire, cela peut resservir ( si Philippe tu es d'accord ),
Ce fut avec plaisir!

;-)

lSteph
"Patrick BASTARD" a écrit dans le
message de news:

Vraiment désolé de vous avoir fait perdre votre temps.
;-(

J'avais en effet une feuille masquée, contenant des instructions pour le
paramétrage. Et je l'avais oubliée.

Merci en tous cas de votre aide.
là, ça va rouler.
;-)

Bien cordialement,

--
Bien cordialement,
P. Bastard



donc rajouter ainsi:

Sub deploie()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Sheets
sh.Visible = xlSheetVisible
sh.Copy
ActiveWorkbook.SaveAs sh.Name
Next
End Sub

'lSteph
"Patrick BASTARD" a écrit dans le
message de news: %
Bonjour, vous.

Je bute sur un problème sans doute simple à résoudre, mais à ma
connaissance pas documenté...
j'ai besoin de vos lumières, ou d'un lien que je n'aurais pas trouvé
: Un classeur avec x onglets.
Comment transformer chacune des onglets de ce classeur en un
classeur mono onglet , en conservant pour chacun de ces nouveaux
classeurs le nom de l' onglet correspondant ?

Le but :
J'ai paramétré des infos qui doivent être importées sur une appli
interne, et lors de l'import, cette appli me demande le nom du
fichier à importer, pas le nom de l'onglet.
En manuel, je sais faire mais c'est fastidieux...

Merci par avance pour vos propositions zéclairées.

Win XP,
Excel 2000 - SP3

--
Bien cordialement,
P. Bastard








Avatar
Philippe.R
Super !
C'était avec plaisir !
;o))))
--
Amicales Salutations

"Patrick BASTARD" a écrit dans le message de news:


Vraiment désolé de vous avoir fait perdre votre temps.
;-(

J'avais en effet une feuille masquée, contenant des instructions pour le paramétrage. Et je l'avais
oubliée.

Merci en tous cas de votre aide.
là, ça va rouler.
;-)

Bien cordialement,

--
Bien cordialement,
P. Bastard



donc rajouter ainsi:

Sub deploie()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Sheets
sh.Visible = xlSheetVisible
sh.Copy
ActiveWorkbook.SaveAs sh.Name
Next
End Sub

'lSteph
"Patrick BASTARD" a écrit dans le
message de news: %
Bonjour, vous.

Je bute sur un problème sans doute simple à résoudre, mais à ma
connaissance pas documenté...
j'ai besoin de vos lumières, ou d'un lien que je n'aurais pas trouvé
: Un classeur avec x onglets.
Comment transformer chacune des onglets de ce classeur en un
classeur mono onglet , en conservant pour chacun de ces nouveaux
classeurs le nom de l' onglet correspondant ?

Le but :
J'ai paramétré des infos qui doivent être importées sur une appli
interne, et lors de l'import, cette appli me demande le nom du
fichier à importer, pas le nom de l'onglet.
En manuel, je sais faire mais c'est fastidieux...

Merci par avance pour vos propositions zéclairées.

Win XP,
Excel 2000 - SP3

--
Bien cordialement,
P. Bastard








Avatar
Patrick BASTARD
Re, *Vous Deux* et bonjour, tous *Lézotr*

Just for fun :

Je précise que c'est un cas d'école, et non un besoin
Comment faire l'inverse : plusieurs classeurs avec un nombre indéterminé
d'onglets regroupés en un seul classeur ou chaque onglet serait nommé par
ex : nomancienclasseur nomonglet ?
Compte tenu de la météo de ce WE, autant en profiter pour s'enrichir, non ?
;-)

Bien cordialement,

Patrick.



Je bute sur un problème sans doute simple à résoudre, mais à ma
connaissance pas documenté...
j'ai besoin de vos lumières, ou d'un lien que je n'aurais pas trouvé
Un classeur avec x onglets.
Comment transformer chacune des onglets de ce classeur en un
classeur mono onglet , en conservant pour chacun de ces nouveaux
classeurs le nom de l' onglet correspondant ?

Win XP,
Excel 2000 - SP3






1 2