Bonjour,
Dans un fichier j'ai créé une macro me permettant de créer une nouvelle feuille en dupliquant uen feuille existante.
Le tout se passe en remplissant une cellule de la feuille ppale:
- sur la feuille principale, petite sub permettant de lancer la macro Nv_feuille lors du remplissage de la celleule J11:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$J$11" And Target.Count = 1 And Not IsEmpty(Target) Then Call Nv_feuille
End Sub
- macro Nv_feuille (elle prend automatiquement le nom saisi en J9 de la feuille principale):
Sub Nv_feuille()
'
' Nv_feuille Macro
' Macro enregistrée le 20/01/2013 par JMF
'
' Crée une copie de la feuille FI et la renomme avec le nom saisi qui est en A3
' A3 étant égal à J9 de la feuille accueil
'
Sheets("FI").Select
Sheets("FI").Copy After:=Sheets(3)
ActiveSheet.Name = Range("A3").Value
Range("A3").Select
End Sub
Maintenant, suivant le même principe, je voudrais imprimer seulement ces nouvelles feuilles créées (dont le nombre peut varier selon le fichier):
Sub ImprimerFiches()
' Imprime les onglets à partir du 4ième
'
'
Dim p As Integer
For p = 4 To Worksheets.Count
Sheets(p).Select
Next p
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
End Sub
mais ça ne fonctionne pas parce que je ne sais pas comment rédiger ma macro
Merci de m'aider.
Dans un fichier j'ai créé une macro me permettant de créer une nouvelle feuille en dupliquant uen feuille existante.
Le tout se passe en remplissant une cellule de la feuille ppale:
- sur la feuille principale, petite sub permettant de lancer la macro Nv_feuille lors du remplissage de la celleule J11:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$J$11" And Target.Count = 1 And Not IsEmpty(Target) Then Call Nv_feuille
End Sub
- macro Nv_feuille (elle prend automatiquement le nom saisi en J9 de la feuille principale):
Sub Nv_feuille()
'
' Nv_feuille Macro
' Macro enregistrée le 20/01/2013 par JMF
'
' Crée une copie de la feuille FI et la renomme avec le nom saisi qui est en A3
' A3 étant égal à J9 de la feuille accueil
'
Sheets("FI").Select
Sheets("FI").Copy After:=Sheets(3)
ActiveSheet.Name = Range("A3").Value
Range("A3").Select
End Sub
Maintenant, suivant le même principe, je voudrais imprimer seulement ces nouvelles feuilles créées (dont le nombre peut varier selon le fichier):
Sub ImprimerFiches()
' Imprime les onglets à partir du 4ième
'
'
Dim p As Integer
For p = 4 To Worksheets.Count
Sheets(p).Select
Next p
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
End Sub
mais ça ne fonctionne pas parce que je ne sais pas comment rédiger ma macro
Merci de m'aider.