Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Erreur d'exécution 9

5 réponses
Avatar
Robi
Bonjour à tous.

J'ai deux questions dans le présent message.

J'ai un fichier avec un onglet nommé "2007" et un autre onglet "IMPRIMER".
À partir de l'onglet 2007, j'ai créé une macro qui doit d'abord effacer
l'onglet IMPRIMER actuel, et en créer un autre du même nom, dans lequel
j'accède à 2007 par des fonctions genre "2007!M2", etc.

Lorsque je fais exécuter ma macro, j'obtiens le message suivant:

"Les feuilles sélectionnées peuvent contenir des données. Pour supprimer
définitivement les données, cliquer sur Supprimer."

Question: y a-t-il un moyen de modifier la macro dans l'éditeur pour éviter
qu'il me pose cette question? La réponse est toujours "Supprimer".

Après que j'ai répondu Supprimer, voici l'erreur suivante:

Erreur d'exécution "9"
L'indice n'appartient pas à la sélection

Voici la partie du code impliqué:

Sheets("IMPRIMER").Select
ActiveWindow.SelectedSheets.Delete
Sheets.Add
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "IMPRIMER"

C'est toujours la ligne après Sheets.Add qui est en jaune.

Merci de m'aider?

Robi, du Québec

5 réponses

Avatar
Francois L

Bonjour,

Sub ZAZA()
Application.DisplayAlerts = False 'pour supprimer les messages
Sheets("IMPRIMER").Delete
Sheets.Add
ActiveSheet.Name = "IMPRIMER"
Application.DisplayAlerts = True 'retablir les messages
End Sub


Ne pas faire référence à Feuil1 qui n'existe vraisemblablement plus !

--
François L


Bonjour à tous.

J'ai deux questions dans le présent message.

J'ai un fichier avec un onglet nommé "2007" et un autre onglet "IMPRIMER".
À partir de l'onglet 2007, j'ai créé une macro qui doit d'abord effacer
l'onglet IMPRIMER actuel, et en créer un autre du même nom, dans lequel
j'accède à 2007 par des fonctions genre "2007!M2", etc.

Lorsque je fais exécuter ma macro, j'obtiens le message suivant:

"Les feuilles sélectionnées peuvent contenir des données. Pour supprimer
définitivement les données, cliquer sur Supprimer."

Question: y a-t-il un moyen de modifier la macro dans l'éditeur pour éviter
qu'il me pose cette question? La réponse est toujours "Supprimer".

Après que j'ai répondu Supprimer, voici l'erreur suivante:

Erreur d'exécution "9"
L'indice n'appartient pas à la sélection

Voici la partie du code impliqué:

Sheets("IMPRIMER").Select
ActiveWindow.SelectedSheets.Delete
Sheets.Add
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "IMPRIMER"

C'est toujours la ligne après Sheets.Add qui est en jaune.

Merci de m'aider?

Robi, du Québec


Avatar
Robi
Bonjour François L et merci beaucoup.
Problème partiellement résolu. Pour le message d'erreur: réglé.

Pour la feuille aussi.

Mais maintenant, j'ai un ".PrintErrors = 8260".

L'idée, c'est que lorsque le fichier est prêt, je le prépare à être imprimé;
je définis donc les marges, entête, etc. et je lui demande d'imprimer tout ce
fichier.

Je remarque qu'il y a 3 fois la définition des marges, vers la fin du
fichier; est-ce normal?

Je te fais parvenir l'éditeur de VBA de cette macro. Merci beaucoup de ta
diligence car ce fichier est dû très très bientôt.

Robi, du Québec

----

Sub ImprBénév2007()
'
' ImprBénév2007 Macro
' Macro enregistrée le 2007-11-17 par Robert Poulin
'
' Touche de raccourci du clavier: Ctrl+b
'
Application.DisplayAlerts = False
Sheets("IMPRIMER").Delete
Sheets.Add
ActiveSheet.Name = "IMPRIMER"
Application.DisplayAlerts = True
Range("A1").Select
ActiveCell.FormulaR1C1 = "PrPrés"
Range("B1").Select
ActiveCell.FormulaR1C1 = "Nom, Adresse, Téléphone - Notes - (Nb
Présences)"
Rows("1:1").Select
Selection.Font.Bold = True
Columns("A:A").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Font.ColorIndex = 5
Range("A2").Select
Sheets("INSTRUCTION MACRO").Select
ActiveSheet.Shapes("Text Box 1").Select
Selection.Characters.Text = _
"S'ASSURER QUE LE FICHIER MAÎTRE (ONGLET 2007 EN BAS) EST BIEN TRIÉ
PAR ORDRE ALPHABÉTIQUE" & Chr(10) & "" & Chr(10) & "Effacer la feuille
IMPRIMER (EN BAS)" & Chr(10) & "Créer une nouvelle feuille et la nommer
IMPRIMER" & Chr(10) & "" & Chr(10) & "Dans cette nouvelle fe"
Selection.Characters(201).Insert String:= _
"uille:" & Chr(10) & "A1 : écrire PrPrés" & Chr(10) & "B1 : écrire :
Nom, adresse, téléphone, - NOTES – (nbre prés)" & Chr(10) & "Mettre ligne 1
en Gras" & Chr(10) & "Colonne A : Centrer toute la colonne et couleur
caractère Bleu" & Chr(10) & "" & Chr(10) & "A2 : Formule : =SI(OU('200"
Selection.Characters(401).Insert String:= _
"7'!M2=2;'2007'!M2=4;'2007'!M2=9;'2007'!M2);'2007'!M2+1;"""")" &
Chr(10) & "" & Chr(10) & "B2 : Formule : ='2007'!A2&"", ""&'2007'!B2&"",
""&'2007'!D2&"", ""&'2007'!E2&"", ""&'2007'!F2&"", ""&'2007'!G2&"",
""&'2007'!H2&"" ""&'2007'!I2&"" - ""&'"
Selection.Characters(601).Insert String:= _
"2007'!L2&"" - ""&""( ""&'2007'!M2&"" )""" & Chr(10) & "" & Chr(10)
& "Copier cellule A2 et B2 autant de fois en descendant, qu’il y a d’entrées
dans le fichier principal" & Chr(10) & "" & Chr(10) & "Highlighter et créer
lignage" & Chr(10) & "" & Chr(10) & "Double-cliquer entre la colonne A"
Selection.Characters(801).Insert String:= _
" et B pour élargir à la bonne dimension" & Chr(10) & "" & Chr(10) &
"Double-cliquer entre la colonne B et C pour élargir à la bonne dimension" &
Chr(10) & "" & Chr(10) & "IMPRIMER : " & Chr(10) & "Cliquer sur l’icône
Aperçu avant impression." & Chr(10) & "Cliquer sur Page… et paysag"
Selection.Characters(1001).Insert String:= _
"e" & Chr(10) & "Dans page, cliquer sur En-tête et Pied de page;
dans Pied de page personnalisé… Partie gauche : insérer la date; partie
centre : Opération Nez rouge 2007 – CONFIDENTIEL; partie droite : page xxx"
Selection.Characters(1201).Insert String:= _
" de xxxx" & Chr(10) & "" & Chr(10) & "Dans Marges, ajuster toutes
les marges au max; refermer Aperçu avant impression" & Chr(10) & "" & Chr(10)
& "Fichier, Mise en page : Feuille : Lignes à répéter en haut : $1:$1" &
Chr(10) & "" & Chr(10) & "Imprimer sur papier 8.5 X 11" & Chr(10) & ""
With Selection.Characters(Start:=1, Length:90).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Sheets("IMPRIMER").Select
ActiveCell.FormulaR1C1 = _

"=IF(OR('2007'!RC[12]=2,'2007'!RC[12]=4,'2007'!RC[12]=9,'2007'!RC[12]),'2007'!RC[12]+1,"""")"
Range("B2").Select
Sheets("INSTRUCTION MACRO").Select
ActiveSheet.Shapes("Text Box 1").Select
Selection.Characters.Text = _
"S'ASSURER QUE LE FICHIER MAÎTRE (ONGLET 2007 EN BAS) EST BIEN TRIÉ
PAR ORDRE ALPHABÉTIQUE" & Chr(10) & "" & Chr(10) & "Effacer la feuille
IMPRIMER (EN BAS)" & Chr(10) & "Créer une nouvelle feuille et la nommer
IMPRIMER" & Chr(10) & "" & Chr(10) & "Dans cette nouvelle fe"
Selection.Characters(201).Insert String:= _
"uille:" & Chr(10) & "A1 : écrire PrPrés" & Chr(10) & "B1 : écrire :
Nom, adresse, téléphone, - NOTES – (nbre prés)" & Chr(10) & "Mettre ligne 1
en Gras" & Chr(10) & "Colonne A : Centrer toute la colonne et couleur
caractère Bleu" & Chr(10) & "" & Chr(10) & "A2 : Formule : =SI(OU('200"
Selection.Characters(401).Insert String:= _
"7'!M2=2;'2007'!M2=4;'2007'!M2=9;'2007'!M2);'2007'!M2+1;"""")" &
Chr(10) & "" & Chr(10) & "B2 : Formule : ='2007'!A2&"", ""&'2007'!B2&"",
""&'2007'!D2&"", ""&'2007'!E2&"", ""&'2007'!F2&"", ""&'2007'!G2&"",
""&'2007'!H2&"" ""&'2007'!I2&"" - ""&'"
Selection.Characters(601).Insert String:= _
"2007'!L2&"" - ""&""( ""&'2007'!M2&"" )""" & Chr(10) & "" & Chr(10)
& "Copier cellule A2 et B2 autant de fois en descendant, qu’il y a d’entrées
dans le fichier principal" & Chr(10) & "" & Chr(10) & "Highlighter et créer
lignage" & Chr(10) & "" & Chr(10) & "Double-cliquer entre la colonne A"
Selection.Characters(801).Insert String:= _
" et B pour élargir à la bonne dimension" & Chr(10) & "" & Chr(10) &
"Double-cliquer entre la colonne B et C pour élargir à la bonne dimension" &
Chr(10) & "" & Chr(10) & "IMPRIMER : " & Chr(10) & "Cliquer sur l’icône
Aperçu avant impression." & Chr(10) & "Cliquer sur Page… et paysag"
Selection.Characters(1001).Insert String:= _
"e" & Chr(10) & "Dans page, cliquer sur En-tête et Pied de page;
dans Pied de page personnalisé… Partie gauche : insérer la date; partie
centre : Opération Nez rouge 2007 – CONFIDENTIEL; partie droite : page xxx"
Selection.Characters(1201).Insert String:= _
" de xxxx" & Chr(10) & "" & Chr(10) & "Dans Marges, ajuster toutes
les marges au max; refermer Aperçu avant impression" & Chr(10) & "" & Chr(10)
& "Fichier, Mise en page : Feuille : Lignes à répéter en haut : $1:$1" &
Chr(10) & "" & Chr(10) & "Imprimer sur papier 8.5 X 11" & Chr(10) & ""
With Selection.Characters(Start:=1, Length:90).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Sheets("IMPRIMER").Select
ActiveCell.FormulaR1C1 = _
"='2007'!RC[-1]&"", ""&'2007'!RC&"", ""&'2007'!RC[2]&"",
""&'2007'!RC[3]&"", ""&'2007'!RC[4]&"", ""&'2007'!RC[5]&"",
""&'2007'!RC[6]&"" ""&'2007'!RC[7]&"" - ""&'2007'!RC[10]&"" - ""&""(
""&'2007'!RC[11]&"" )"""
Range("C2").Select
Columns("A:A").EntireColumn.AutoFit
Columns("B:B").EntireColumn.AutoFit
Range("A2:B2").Select
Selection.AutoFill Destination:=Range("A2:B40"), Type:=xlFillDefault
Range("A2:B40").Select
Range("A1:B40").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Range("B1").Select
Columns("B:B").EntireColumn.AutoFit
With ActiveSheet.PageSetup
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4)
.FooterMargin = Application.InchesToPoints(0.4)
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
.PrintErrors = 8260
End With
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Opération Nez rouge 2007 - CONFIDENTIEL"
.RightFooter = "Page &P de &N"
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWindow.SelectedSheets.PrintPreview
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Opération Nez rouge 2007 - CONFIDENTIEL"
.RightFooter = "Page &P de &N"
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
End Sub




Bonjour,

Sub ZAZA()
Application.DisplayAlerts = False 'pour supprimer les messages
Sheets("IMPRIMER").Delete
Sheets.Add
ActiveSheet.Name = "IMPRIMER"
Application.DisplayAlerts = True 'retablir les messages
End Sub


Ne pas faire référence à Feuil1 qui n'existe vraisemblablement plus !

--
François L


Bonjour à tous.

J'ai deux questions dans le présent message.

J'ai un fichier avec un onglet nommé "2007" et un autre onglet "IMPRIMER".
À partir de l'onglet 2007, j'ai créé une macro qui doit d'abord effacer
l'onglet IMPRIMER actuel, et en créer un autre du même nom, dans lequel
j'accède à 2007 par des fonctions genre "2007!M2", etc.

Lorsque je fais exécuter ma macro, j'obtiens le message suivant:

"Les feuilles sélectionnées peuvent contenir des données. Pour supprimer
définitivement les données, cliquer sur Supprimer."

Question: y a-t-il un moyen de modifier la macro dans l'éditeur pour éviter
qu'il me pose cette question? La réponse est toujours "Supprimer".

Après que j'ai répondu Supprimer, voici l'erreur suivante:

Erreur d'exécution "9"
L'indice n'appartient pas à la sélection

Voici la partie du code impliqué:

Sheets("IMPRIMER").Select
ActiveWindow.SelectedSheets.Delete
Sheets.Add
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "IMPRIMER"

C'est toujours la ligne après Sheets.Add qui est en jaune.

Merci de m'aider?

Robi, du Québec





Avatar
Francois L
Re,

Là, je ne vais t'être d'un grand secours... ma version d'excel (2000) ne
gère pas la propriété PrintErrors.
Il me semble tout de même qu'il y a du ménage à faire dans la mise en
forme de l'impression !
Désolé,

--
François L


Bonjour François L et merci beaucoup.
Problème partiellement résolu. Pour le message d'erreur: réglé.

Pour la feuille aussi.

Mais maintenant, j'ai un ".PrintErrors = 8260".

L'idée, c'est que lorsque le fichier est prêt, je le prépare à être imprimé;
je définis donc les marges, entête, etc. et je lui demande d'imprimer tout ce
fichier.

Je remarque qu'il y a 3 fois la définition des marges, vers la fin du
fichier; est-ce normal?

Je te fais parvenir l'éditeur de VBA de cette macro. Merci beaucoup de ta
diligence car ce fichier est dû très très bientôt.

Robi, du Québec

----

Sub ImprBénév2007()
'
' ImprBénév2007 Macro
' Macro enregistrée le 2007-11-17 par Robert Poulin
'
' Touche de raccourci du clavier: Ctrl+b
'
Application.DisplayAlerts = False
Sheets("IMPRIMER").Delete
Sheets.Add
ActiveSheet.Name = "IMPRIMER"
Application.DisplayAlerts = True
Range("A1").Select
ActiveCell.FormulaR1C1 = "PrPrés"
Range("B1").Select
ActiveCell.FormulaR1C1 = "Nom, Adresse, Téléphone - Notes - (Nb
Présences)"
Rows("1:1").Select
Selection.Font.Bold = True
Columns("A:A").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Font.ColorIndex = 5
Range("A2").Select
Sheets("INSTRUCTION MACRO").Select
ActiveSheet.Shapes("Text Box 1").Select
Selection.Characters.Text = _
"S'ASSURER QUE LE FICHIER MAÎTRE (ONGLET 2007 EN BAS) EST BIEN TRIÉ
PAR ORDRE ALPHABÉTIQUE" & Chr(10) & "" & Chr(10) & "Effacer la feuille
IMPRIMER (EN BAS)" & Chr(10) & "Créer une nouvelle feuille et la nommer
IMPRIMER" & Chr(10) & "" & Chr(10) & "Dans cette nouvelle fe"
Selection.Characters(201).Insert String:= _
"uille:" & Chr(10) & "A1 : écrire PrPrés" & Chr(10) & "B1 : écrire :
Nom, adresse, téléphone, - NOTES – (nbre prés)" & Chr(10) & "Mettre ligne 1
en Gras" & Chr(10) & "Colonne A : Centrer toute la colonne et couleur
caractère Bleu" & Chr(10) & "" & Chr(10) & "A2 : Formule : =SI(OU('200"
Selection.Characters(401).Insert String:= _
"7'!M2=2;'2007'!M2=4;'2007'!M2=9;'2007'!M2);'2007'!M2+1;"""")" &
Chr(10) & "" & Chr(10) & "B2 : Formule : ='2007'!A2&"", ""&'2007'!B2&"",
""&'2007'!D2&"", ""&'2007'!E2&"", ""&'2007'!F2&"", ""&'2007'!G2&"",
""&'2007'!H2&"" ""&'2007'!I2&"" - ""&'"
Selection.Characters(601).Insert String:= _
"2007'!L2&"" - ""&""( ""&'2007'!M2&"" )""" & Chr(10) & "" & Chr(10)
& "Copier cellule A2 et B2 autant de fois en descendant, qu’il y a d’entrées
dans le fichier principal" & Chr(10) & "" & Chr(10) & "Highlighter et créer
lignage" & Chr(10) & "" & Chr(10) & "Double-cliquer entre la colonne A"
Selection.Characters(801).Insert String:= _
" et B pour élargir à la bonne dimension" & Chr(10) & "" & Chr(10) &
"Double-cliquer entre la colonne B et C pour élargir à la bonne dimension" &
Chr(10) & "" & Chr(10) & "IMPRIMER : " & Chr(10) & "Cliquer sur l’icône
Aperçu avant impression." & Chr(10) & "Cliquer sur Page… et paysag"
Selection.Characters(1001).Insert String:= _
"e" & Chr(10) & "Dans page, cliquer sur En-tête et Pied de page;
dans Pied de page personnalisé… Partie gauche : insérer la date; partie
centre : Opération Nez rouge 2007 – CONFIDENTIEL; partie droite : page xxx"
Selection.Characters(1201).Insert String:= _
" de xxxx" & Chr(10) & "" & Chr(10) & "Dans Marges, ajuster toutes
les marges au max; refermer Aperçu avant impression" & Chr(10) & "" & Chr(10)
& "Fichier, Mise en page : Feuille : Lignes à répéter en haut : $1:$1" &
Chr(10) & "" & Chr(10) & "Imprimer sur papier 8.5 X 11" & Chr(10) & ""
With Selection.Characters(Start:=1, Length:90).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Sheets("IMPRIMER").Select
ActiveCell.FormulaR1C1 = _

"=IF(OR('2007'!RC[12]=2,'2007'!RC[12]=4,'2007'!RC[12]=9,'2007'!RC[12]),'2007'!RC[12]+1,"""")"
Range("B2").Select
Sheets("INSTRUCTION MACRO").Select
ActiveSheet.Shapes("Text Box 1").Select
Selection.Characters.Text = _
"S'ASSURER QUE LE FICHIER MAÎTRE (ONGLET 2007 EN BAS) EST BIEN TRIÉ
PAR ORDRE ALPHABÉTIQUE" & Chr(10) & "" & Chr(10) & "Effacer la feuille
IMPRIMER (EN BAS)" & Chr(10) & "Créer une nouvelle feuille et la nommer
IMPRIMER" & Chr(10) & "" & Chr(10) & "Dans cette nouvelle fe"
Selection.Characters(201).Insert String:= _
"uille:" & Chr(10) & "A1 : écrire PrPrés" & Chr(10) & "B1 : écrire :
Nom, adresse, téléphone, - NOTES – (nbre prés)" & Chr(10) & "Mettre ligne 1
en Gras" & Chr(10) & "Colonne A : Centrer toute la colonne et couleur
caractère Bleu" & Chr(10) & "" & Chr(10) & "A2 : Formule : =SI(OU('200"
Selection.Characters(401).Insert String:= _
"7'!M2=2;'2007'!M2=4;'2007'!M2=9;'2007'!M2);'2007'!M2+1;"""")" &
Chr(10) & "" & Chr(10) & "B2 : Formule : ='2007'!A2&"", ""&'2007'!B2&"",
""&'2007'!D2&"", ""&'2007'!E2&"", ""&'2007'!F2&"", ""&'2007'!G2&"",
""&'2007'!H2&"" ""&'2007'!I2&"" - ""&'"
Selection.Characters(601).Insert String:= _
"2007'!L2&"" - ""&""( ""&'2007'!M2&"" )""" & Chr(10) & "" & Chr(10)
& "Copier cellule A2 et B2 autant de fois en descendant, qu’il y a d’entrées
dans le fichier principal" & Chr(10) & "" & Chr(10) & "Highlighter et créer
lignage" & Chr(10) & "" & Chr(10) & "Double-cliquer entre la colonne A"
Selection.Characters(801).Insert String:= _
" et B pour élargir à la bonne dimension" & Chr(10) & "" & Chr(10) &
"Double-cliquer entre la colonne B et C pour élargir à la bonne dimension" &
Chr(10) & "" & Chr(10) & "IMPRIMER : " & Chr(10) & "Cliquer sur l’icône
Aperçu avant impression." & Chr(10) & "Cliquer sur Page… et paysag"
Selection.Characters(1001).Insert String:= _
"e" & Chr(10) & "Dans page, cliquer sur En-tête et Pied de page;
dans Pied de page personnalisé… Partie gauche : insérer la date; partie
centre : Opération Nez rouge 2007 – CONFIDENTIEL; partie droite : page xxx"
Selection.Characters(1201).Insert String:= _
" de xxxx" & Chr(10) & "" & Chr(10) & "Dans Marges, ajuster toutes
les marges au max; refermer Aperçu avant impression" & Chr(10) & "" & Chr(10)
& "Fichier, Mise en page : Feuille : Lignes à répéter en haut : $1:$1" &
Chr(10) & "" & Chr(10) & "Imprimer sur papier 8.5 X 11" & Chr(10) & ""
With Selection.Characters(Start:=1, Length:90).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Sheets("IMPRIMER").Select
ActiveCell.FormulaR1C1 = _
"='2007'!RC[-1]&"", ""&'2007'!RC&"", ""&'2007'!RC[2]&"",
""&'2007'!RC[3]&"", ""&'2007'!RC[4]&"", ""&'2007'!RC[5]&"",
""&'2007'!RC[6]&"" ""&'2007'!RC[7]&"" - ""&'2007'!RC[10]&"" - ""&""(
""&'2007'!RC[11]&"" )"""
Range("C2").Select
Columns("A:A").EntireColumn.AutoFit
Columns("B:B").EntireColumn.AutoFit
Range("A2:B2").Select
Selection.AutoFill Destination:=Range("A2:B40"), Type:=xlFillDefault
Range("A2:B40").Select
Range("A1:B40").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Range("B1").Select
Columns("B:B").EntireColumn.AutoFit
With ActiveSheet.PageSetup
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4)
.FooterMargin = Application.InchesToPoints(0.4)
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
.PrintErrors = 8260
End With
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Opération Nez rouge 2007 - CONFIDENTIEL"
.RightFooter = "Page &P de &N"
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWindow.SelectedSheets.PrintPreview
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Opération Nez rouge 2007 - CONFIDENTIEL"
.RightFooter = "Page &P de &N"
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
End Sub




Bonjour,

Sub ZAZA()
Application.DisplayAlerts = False 'pour supprimer les messages
Sheets("IMPRIMER").Delete
Sheets.Add
ActiveSheet.Name = "IMPRIMER"
Application.DisplayAlerts = True 'retablir les messages
End Sub


Ne pas faire référence à Feuil1 qui n'existe vraisemblablement plus !

--
François L


Bonjour à tous.

J'ai deux questions dans le présent message.

J'ai un fichier avec un onglet nommé "2007" et un autre onglet "IMPRIMER".
À partir de l'onglet 2007, j'ai créé une macro qui doit d'abord effacer
l'onglet IMPRIMER actuel, et en créer un autre du même nom, dans lequel
j'accède à 2007 par des fonctions genre "2007!M2", etc.

Lorsque je fais exécuter ma macro, j'obtiens le message suivant:

"Les feuilles sélectionnées peuvent contenir des données. Pour supprimer
définitivement les données, cliquer sur Supprimer."

Question: y a-t-il un moyen de modifier la macro dans l'éditeur pour éviter
qu'il me pose cette question? La réponse est toujours "Supprimer".

Après que j'ai répondu Supprimer, voici l'erreur suivante:

Erreur d'exécution "9"
L'indice n'appartient pas à la sélection

Voici la partie du code impliqué:

Sheets("IMPRIMER").Select
ActiveWindow.SelectedSheets.Delete
Sheets.Add
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "IMPRIMER"

C'est toujours la ligne après Sheets.Add qui est en jaune.

Merci de m'aider?

Robi, du Québec






Avatar
Robi
Bonjour François
Merci de ton attention. Pour ce qui est de la gestion de l'impression, j'ai
pourtant activé la fonction MACRO, et j'ai ensuite fait toutes les
fonctionnalités désirées, donc je n'ai pas programmé en VBA; d'où
probablement l'erreur de Feuille1! Feuille2!, que j'obtenais, car je ne
nommais pas les feuilles moi-même, mais je double-cliquais dessus avec la
souris pour changer le nom en IMPRIMER, alors que le système comprenait
Feuille1, etc. J'ai corrigé la macro en VBA sur tes instructions et tout a
fonctionné. Merci encore.






Re,

Là, je ne vais t'être d'un grand secours... ma version d'excel (2000) ne
gère pas la propriété PrintErrors.
Il me semble tout de même qu'il y a du ménage à faire dans la mise en
forme de l'impression !
Désolé,

--
François L


Bonjour François L et merci beaucoup.
Problème partiellement résolu. Pour le message d'erreur: réglé.

Pour la feuille aussi.

Mais maintenant, j'ai un ".PrintErrors = 8260".

L'idée, c'est que lorsque le fichier est prêt, je le prépare à être imprimé;
je définis donc les marges, entête, etc. et je lui demande d'imprimer tout ce
fichier.

Je remarque qu'il y a 3 fois la définition des marges, vers la fin du
fichier; est-ce normal?

Je te fais parvenir l'éditeur de VBA de cette macro. Merci beaucoup de ta
diligence car ce fichier est dû très très bientôt.

Robi, du Québec

----

Sub ImprBénév2007()
'
' ImprBénév2007 Macro
' Macro enregistrée le 2007-11-17 par Robert Poulin
'
' Touche de raccourci du clavier: Ctrl+b
'
Application.DisplayAlerts = False
Sheets("IMPRIMER").Delete
Sheets.Add
ActiveSheet.Name = "IMPRIMER"
Application.DisplayAlerts = True
Range("A1").Select
ActiveCell.FormulaR1C1 = "PrPrés"
Range("B1").Select
ActiveCell.FormulaR1C1 = "Nom, Adresse, Téléphone - Notes - (Nb
Présences)"
Rows("1:1").Select
Selection.Font.Bold = True
Columns("A:A").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Font.ColorIndex = 5
Range("A2").Select
Sheets("INSTRUCTION MACRO").Select
ActiveSheet.Shapes("Text Box 1").Select
Selection.Characters.Text = _
"S'ASSURER QUE LE FICHIER MAÎTRE (ONGLET 2007 EN BAS) EST BIEN TRIÉ
PAR ORDRE ALPHABÉTIQUE" & Chr(10) & "" & Chr(10) & "Effacer la feuille
IMPRIMER (EN BAS)" & Chr(10) & "Créer une nouvelle feuille et la nommer
IMPRIMER" & Chr(10) & "" & Chr(10) & "Dans cette nouvelle fe"
Selection.Characters(201).Insert String:= _
"uille:" & Chr(10) & "A1 : écrire PrPrés" & Chr(10) & "B1 : écrire :
Nom, adresse, téléphone, - NOTES – (nbre prés)" & Chr(10) & "Mettre ligne 1
en Gras" & Chr(10) & "Colonne A : Centrer toute la colonne et couleur
caractère Bleu" & Chr(10) & "" & Chr(10) & "A2 : Formule : =SI(OU('200"
Selection.Characters(401).Insert String:= _
"7'!M2=2;'2007'!M2=4;'2007'!M2=9;'2007'!M2);'2007'!M2+1;"""")" &
Chr(10) & "" & Chr(10) & "B2 : Formule : ='2007'!A2&"", ""&'2007'!B2&"",
""&'2007'!D2&"", ""&'2007'!E2&"", ""&'2007'!F2&"", ""&'2007'!G2&"",
""&'2007'!H2&"" ""&'2007'!I2&"" - ""&'"
Selection.Characters(601).Insert String:= _
"2007'!L2&"" - ""&""( ""&'2007'!M2&"" )""" & Chr(10) & "" & Chr(10)
& "Copier cellule A2 et B2 autant de fois en descendant, qu’il y a d’entrées
dans le fichier principal" & Chr(10) & "" & Chr(10) & "Highlighter et créer
lignage" & Chr(10) & "" & Chr(10) & "Double-cliquer entre la colonne A"
Selection.Characters(801).Insert String:= _
" et B pour élargir à la bonne dimension" & Chr(10) & "" & Chr(10) &
"Double-cliquer entre la colonne B et C pour élargir à la bonne dimension" &
Chr(10) & "" & Chr(10) & "IMPRIMER : " & Chr(10) & "Cliquer sur l’icône
Aperçu avant impression." & Chr(10) & "Cliquer sur Page… et paysag"
Selection.Characters(1001).Insert String:= _
"e" & Chr(10) & "Dans page, cliquer sur En-tête et Pied de page;
dans Pied de page personnalisé… Partie gauche : insérer la date; partie
centre : Opération Nez rouge 2007 – CONFIDENTIEL; partie droite : page xxx"
Selection.Characters(1201).Insert String:= _
" de xxxx" & Chr(10) & "" & Chr(10) & "Dans Marges, ajuster toutes
les marges au max; refermer Aperçu avant impression" & Chr(10) & "" & Chr(10)
& "Fichier, Mise en page : Feuille : Lignes à répéter en haut : $1:$1" &
Chr(10) & "" & Chr(10) & "Imprimer sur papier 8.5 X 11" & Chr(10) & ""
With Selection.Characters(Start:=1, Length:90).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Sheets("IMPRIMER").Select
ActiveCell.FormulaR1C1 = _

"=IF(OR('2007'!RC[12]=2,'2007'!RC[12]=4,'2007'!RC[12]=9,'2007'!RC[12]),'2007'!RC[12]+1,"""")"
Range("B2").Select
Sheets("INSTRUCTION MACRO").Select
ActiveSheet.Shapes("Text Box 1").Select
Selection.Characters.Text = _
"S'ASSURER QUE LE FICHIER MAÎTRE (ONGLET 2007 EN BAS) EST BIEN TRIÉ
PAR ORDRE ALPHABÉTIQUE" & Chr(10) & "" & Chr(10) & "Effacer la feuille
IMPRIMER (EN BAS)" & Chr(10) & "Créer une nouvelle feuille et la nommer
IMPRIMER" & Chr(10) & "" & Chr(10) & "Dans cette nouvelle fe"
Selection.Characters(201).Insert String:= _
"uille:" & Chr(10) & "A1 : écrire PrPrés" & Chr(10) & "B1 : écrire :
Nom, adresse, téléphone, - NOTES – (nbre prés)" & Chr(10) & "Mettre ligne 1
en Gras" & Chr(10) & "Colonne A : Centrer toute la colonne et couleur
caractère Bleu" & Chr(10) & "" & Chr(10) & "A2 : Formule : =SI(OU('200"
Selection.Characters(401).Insert String:= _
"7'!M2=2;'2007'!M2=4;'2007'!M2=9;'2007'!M2);'2007'!M2+1;"""")" &
Chr(10) & "" & Chr(10) & "B2 : Formule : ='2007'!A2&"", ""&'2007'!B2&"",
""&'2007'!D2&"", ""&'2007'!E2&"", ""&'2007'!F2&"", ""&'2007'!G2&"",
""&'2007'!H2&"" ""&'2007'!I2&"" - ""&'"
Selection.Characters(601).Insert String:= _
"2007'!L2&"" - ""&""( ""&'2007'!M2&"" )""" & Chr(10) & "" & Chr(10)
& "Copier cellule A2 et B2 autant de fois en descendant, qu’il y a d’entrées
dans le fichier principal" & Chr(10) & "" & Chr(10) & "Highlighter et créer
lignage" & Chr(10) & "" & Chr(10) & "Double-cliquer entre la colonne A"
Selection.Characters(801).Insert String:= _
" et B pour élargir à la bonne dimension" & Chr(10) & "" & Chr(10) &
"Double-cliquer entre la colonne B et C pour élargir à la bonne dimension" &
Chr(10) & "" & Chr(10) & "IMPRIMER : " & Chr(10) & "Cliquer sur l’icône
Aperçu avant impression." & Chr(10) & "Cliquer sur Page… et paysag"
Selection.Characters(1001).Insert String:= _
"e" & Chr(10) & "Dans page, cliquer sur En-tête et Pied de page;
dans Pied de page personnalisé… Partie gauche : insérer la date; partie
centre : Opération Nez rouge 2007 – CONFIDENTIEL; partie droite : page xxx"
Selection.Characters(1201).Insert String:= _
" de xxxx" & Chr(10) & "" & Chr(10) & "Dans Marges, ajuster toutes
les marges au max; refermer Aperçu avant impression" & Chr(10) & "" & Chr(10)
& "Fichier, Mise en page : Feuille : Lignes à répéter en haut : $1:$1" &
Chr(10) & "" & Chr(10) & "Imprimer sur papier 8.5 X 11" & Chr(10) & ""
With Selection.Characters(Start:=1, Length:90).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Sheets("IMPRIMER").Select
ActiveCell.FormulaR1C1 = _
"='2007'!RC[-1]&"", ""&'2007'!RC&"", ""&'2007'!RC[2]&"",
""&'2007'!RC[3]&"", ""&'2007'!RC[4]&"", ""&'2007'!RC[5]&"",
""&'2007'!RC[6]&"" ""&'2007'!RC[7]&"" - ""&'2007'!RC[10]&"" - ""&""(
""&'2007'!RC[11]&"" )"""
Range("C2").Select
Columns("A:A").EntireColumn.AutoFit
Columns("B:B").EntireColumn.AutoFit
Range("A2:B2").Select
Selection.AutoFill Destination:=Range("A2:B40"), Type:=xlFillDefault
Range("A2:B40").Select
Range("A1:B40").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Range("B1").Select
Columns("B:B").EntireColumn.AutoFit
With ActiveSheet.PageSetup
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4)
.FooterMargin = Application.InchesToPoints(0.4)
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
.PrintErrors = 8260
End With
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Opération Nez rouge 2007 - CONFIDENTIEL"
.RightFooter = "Page &P de &N"
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWindow.SelectedSheets.PrintPreview
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Opération Nez rouge 2007 - CONFIDENTIEL"
.RightFooter = "Page &P de &N"
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
End Sub




Bonjour,

Sub ZAZA()
Application.DisplayAlerts = False 'pour supprimer les messages






Avatar
Francois L

Re,

L'enregistreur de macro est un bel outil pour apprendre le VBA ou
retrouver des méthodes que l'on a oubliée... mais il présente quelques
inconvénients et notamment deux :
- générer un code assez "verbeux" (comportant beau coup de lignes
inutiles) assez difficile à comprendre
- utiliser systématiquement la sélection qui ralentit l'exécution tout
en étant le plus souvent inutile.

--
François L





Bonjour François
Merci de ton attention. Pour ce qui est de la gestion de l'impression, j'ai
pourtant activé la fonction MACRO, et j'ai ensuite fait toutes les
fonctionnalités désirées, donc je n'ai pas programmé en VBA; d'où
probablement l'erreur de Feuille1! Feuille2!, que j'obtenais, car je ne
nommais pas les feuilles moi-même, mais je double-cliquais dessus avec la
souris pour changer le nom en IMPRIMER, alors que le système comprenait
Feuille1, etc. J'ai corrigé la macro en VBA sur tes instructions et tout a
fonctionné. Merci encore.






Re,

Là, je ne vais t'être d'un grand secours... ma version d'excel (2000) ne
gère pas la propriété PrintErrors.
Il me semble tout de même qu'il y a du ménage à faire dans la mise en
forme de l'impression !
Désolé,

--
François L


Bonjour François L et merci beaucoup.
Problème partiellement résolu. Pour le message d'erreur: réglé.

Pour la feuille aussi.

Mais maintenant, j'ai un ".PrintErrors = 8260".

L'idée, c'est que lorsque le fichier est prêt, je le prépare à être imprimé;
je définis donc les marges, entête, etc. et je lui demande d'imprimer tout ce
fichier.

Je remarque qu'il y a 3 fois la définition des marges, vers la fin du
fichier; est-ce normal?

Je te fais parvenir l'éditeur de VBA de cette macro. Merci beaucoup de ta
diligence car ce fichier est dû très très bientôt.

Robi, du Québec

----

Sub ImprBénév2007()
'
' ImprBénév2007 Macro
' Macro enregistrée le 2007-11-17 par Robert Poulin
'
' Touche de raccourci du clavier: Ctrl+b
'
Application.DisplayAlerts = False
Sheets("IMPRIMER").Delete
Sheets.Add
ActiveSheet.Name = "IMPRIMER"
Application.DisplayAlerts = True
Range("A1").Select
ActiveCell.FormulaR1C1 = "PrPrés"
Range("B1").Select
ActiveCell.FormulaR1C1 = "Nom, Adresse, Téléphone - Notes - (Nb
Présences)"
Rows("1:1").Select
Selection.Font.Bold = True
Columns("A:A").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Font.ColorIndex = 5
Range("A2").Select
Sheets("INSTRUCTION MACRO").Select
ActiveSheet.Shapes("Text Box 1").Select
Selection.Characters.Text = _
"S'ASSURER QUE LE FICHIER MAÎTRE (ONGLET 2007 EN BAS) EST BIEN TRIÉ
PAR ORDRE ALPHABÉTIQUE" & Chr(10) & "" & Chr(10) & "Effacer la feuille
IMPRIMER (EN BAS)" & Chr(10) & "Créer une nouvelle feuille et la nommer
IMPRIMER" & Chr(10) & "" & Chr(10) & "Dans cette nouvelle fe"
Selection.Characters(201).Insert String:= _
"uille:" & Chr(10) & "A1 : écrire PrPrés" & Chr(10) & "B1 : écrire :
Nom, adresse, téléphone, - NOTES – (nbre prés)" & Chr(10) & "Mettre ligne 1
en Gras" & Chr(10) & "Colonne A : Centrer toute la colonne et couleur
caractère Bleu" & Chr(10) & "" & Chr(10) & "A2 : Formule : =SI(OU('200"
Selection.Characters(401).Insert String:= _
"7'!M2=2;'2007'!M2=4;'2007'!M2=9;'2007'!M2);'2007'!M2+1;"""")" &
Chr(10) & "" & Chr(10) & "B2 : Formule : ='2007'!A2&"", ""&'2007'!B2&"",
""&'2007'!D2&"", ""&'2007'!E2&"", ""&'2007'!F2&"", ""&'2007'!G2&"",
""&'2007'!H2&"" ""&'2007'!I2&"" - ""&'"
Selection.Characters(601).Insert String:= _
"2007'!L2&"" - ""&""( ""&'2007'!M2&"" )""" & Chr(10) & "" & Chr(10)
& "Copier cellule A2 et B2 autant de fois en descendant, qu’il y a d’entrées
dans le fichier principal" & Chr(10) & "" & Chr(10) & "Highlighter et créer
lignage" & Chr(10) & "" & Chr(10) & "Double-cliquer entre la colonne A"
Selection.Characters(801).Insert String:= _
" et B pour élargir à la bonne dimension" & Chr(10) & "" & Chr(10) &
"Double-cliquer entre la colonne B et C pour élargir à la bonne dimension" &
Chr(10) & "" & Chr(10) & "IMPRIMER : " & Chr(10) & "Cliquer sur l’icône
Aperçu avant impression." & Chr(10) & "Cliquer sur Page… et paysag"
Selection.Characters(1001).Insert String:= _
"e" & Chr(10) & "Dans page, cliquer sur En-tête et Pied de page;
dans Pied de page personnalisé… Partie gauche : insérer la date; partie
centre : Opération Nez rouge 2007 – CONFIDENTIEL; partie droite : page xxx"
Selection.Characters(1201).Insert String:= _
" de xxxx" & Chr(10) & "" & Chr(10) & "Dans Marges, ajuster toutes
les marges au max; refermer Aperçu avant impression" & Chr(10) & "" & Chr(10)
& "Fichier, Mise en page : Feuille : Lignes à répéter en haut : $1:$1" &
Chr(10) & "" & Chr(10) & "Imprimer sur papier 8.5 X 11" & Chr(10) & ""
With Selection.Characters(Start:=1, Length:90).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Sheets("IMPRIMER").Select
ActiveCell.FormulaR1C1 = _

"=IF(OR('2007'!RC[12]=2,'2007'!RC[12]=4,'2007'!RC[12]=9,'2007'!RC[12]),'2007'!RC[12]+1,"""")"
Range("B2").Select
Sheets("INSTRUCTION MACRO").Select
ActiveSheet.Shapes("Text Box 1").Select
Selection.Characters.Text = _
"S'ASSURER QUE LE FICHIER MAÎTRE (ONGLET 2007 EN BAS) EST BIEN TRIÉ
PAR ORDRE ALPHABÉTIQUE" & Chr(10) & "" & Chr(10) & "Effacer la feuille
IMPRIMER (EN BAS)" & Chr(10) & "Créer une nouvelle feuille et la nommer
IMPRIMER" & Chr(10) & "" & Chr(10) & "Dans cette nouvelle fe"
Selection.Characters(201).Insert String:= _
"uille:" & Chr(10) & "A1 : écrire PrPrés" & Chr(10) & "B1 : écrire :
Nom, adresse, téléphone, - NOTES – (nbre prés)" & Chr(10) & "Mettre ligne 1
en Gras" & Chr(10) & "Colonne A : Centrer toute la colonne et couleur
caractère Bleu" & Chr(10) & "" & Chr(10) & "A2 : Formule : =SI(OU('200"
Selection.Characters(401).Insert String:= _
"7'!M2=2;'2007'!M2=4;'2007'!M2=9;'2007'!M2);'2007'!M2+1;"""")" &
Chr(10) & "" & Chr(10) & "B2 : Formule : ='2007'!A2&"", ""&'2007'!B2&"",
""&'2007'!D2&"", ""&'2007'!E2&"", ""&'2007'!F2&"", ""&'2007'!G2&"",
""&'2007'!H2&"" ""&'2007'!I2&"" - ""&'"
Selection.Characters(601).Insert String:= _
"2007'!L2&"" - ""&""( ""&'2007'!M2&"" )""" & Chr(10) & "" & Chr(10)
& "Copier cellule A2 et B2 autant de fois en descendant, qu’il y a d’entrées
dans le fichier principal" & Chr(10) & "" & Chr(10) & "Highlighter et créer
lignage" & Chr(10) & "" & Chr(10) & "Double-cliquer entre la colonne A"
Selection.Characters(801).Insert String:= _
" et B pour élargir à la bonne dimension" & Chr(10) & "" & Chr(10) &
"Double-cliquer entre la colonne B et C pour élargir à la bonne dimension" &
Chr(10) & "" & Chr(10) & "IMPRIMER : " & Chr(10) & "Cliquer sur l’icône
Aperçu avant impression." & Chr(10) & "Cliquer sur Page… et paysag"
Selection.Characters(1001).Insert String:= _
"e" & Chr(10) & "Dans page, cliquer sur En-tête et Pied de page;
dans Pied de page personnalisé… Partie gauche : insérer la date; partie
centre : Opération Nez rouge 2007 – CONFIDENTIEL; partie droite : page xxx"
Selection.Characters(1201).Insert String:= _
" de xxxx" & Chr(10) & "" & Chr(10) & "Dans Marges, ajuster toutes
les marges au max; refermer Aperçu avant impression" & Chr(10) & "" & Chr(10)
& "Fichier, Mise en page : Feuille : Lignes à répéter en haut : $1:$1" &
Chr(10) & "" & Chr(10) & "Imprimer sur papier 8.5 X 11" & Chr(10) & ""
With Selection.Characters(Start:=1, Length:90).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Sheets("IMPRIMER").Select
ActiveCell.FormulaR1C1 = _
"='2007'!RC[-1]&"", ""&'2007'!RC&"", ""&'2007'!RC[2]&"",
""&'2007'!RC[3]&"", ""&'2007'!RC[4]&"", ""&'2007'!RC[5]&"",
""&'2007'!RC[6]&"" ""&'2007'!RC[7]&"" - ""&'2007'!RC[10]&"" - ""&""(
""&'2007'!RC[11]&"" )"""
Range("C2").Select
Columns("A:A").EntireColumn.AutoFit
Columns("B:B").EntireColumn.AutoFit
Range("A2:B2").Select
Selection.AutoFill Destination:=Range("A2:B40"), Type:=xlFillDefault
Range("A2:B40").Select
Range("A1:B40").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Range("B1").Select
Columns("B:B").EntireColumn.AutoFit
With ActiveSheet.PageSetup
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4)
.FooterMargin = Application.InchesToPoints(0.4)
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
.PrintErrors = 8260
End With
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Opération Nez rouge 2007 - CONFIDENTIEL"
.RightFooter = "Page &P de &N"
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWindow.SelectedSheets.PrintPreview
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Opération Nez rouge 2007 - CONFIDENTIEL"
.RightFooter = "Page &P de &N"
.LeftMargin = Application.InchesToPoints(0.28)
.RightMargin = Application.InchesToPoints(0.3)
.TopMargin = Application.InchesToPoints(0.68)
.BottomMargin = Application.InchesToPoints(0.81)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
End Sub




Bonjour,

Sub ZAZA()
Application.DisplayAlerts = False 'pour supprimer les messages