Bonjour,
je suis novice en VBA...
j'ai essayé de faire une fonction qui automatisé certaines fonctions
en essayant de la faire en ayant trouvé des exmples sur le net.
( A la base je veux :
A l’ouverture d’une feuille Excel :
L’utilisateur sélectionne des feuilles dans le fichier ouvert :
La macro doit Pouvoir réaliser, dans ces feuilles sélectionné un copier coller
- Des valeurs (seulement)
- Des formats des feuilles
- Si possible des photos éventuels
Et sauvegarder ça dans un autre fichier.
)
Mais j'ai quelque soucis :
1 : la partie
<code>For Each feuille In Selection.Sheets</code>
j'ai une erreur sur feuille = >' Erreur d’exécution ‘438’
Propriété ou méthode non géré par cet objet. ' pb sur mot feuille
je sais pas comment lui dire que c la ou les feuille(s) sélectionné du classeur qu'il faut qu'il prenne en compte.
2 : je ne sais pas comment faut il lui indiquer qu'il faut qu'il garde la mise en page d'origine.
3 : comment pouvoir également copier les images du document?
Sub cut_paste()
Application.ScreenUpdating = False 'désactive la mise à jour de l'écran (accélère l'application)
'For Each feuille In Selection.Sheets
' feuille.Activate
Cells.Select
Selection.Copy
Workbooks.Add
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
ChDir 'D:\\Download'
'Next feuille
ActiveWorkbook.SaveAs Filename:='D:\\Download\\Classeur1.xls', FileFormat:= _
xlNormal, Password:='', WriteResPassword:='', ReadOnlyRecommended:=False _
, CreateBackup:=False
Application.ScreenUpdating = True 'désactive la mise à jour de l'écran (accélère l'application)
End Sub
merci de votre aide!