Bonjour a tous,
Je souhaite imprimer dans le pied de page de mon impression courante,
"la vue" qui =E9tait s=E9l=E9ctionn=E9e lors de l'impression.
Pour commencer, je n'arrive pas a la rep=E9rer..
Je suis en train de broder autour de ceci:
Sub ListeVue()
Dim MaVue As String
MaVue =3D ActiveSheet.CustomViews.Name
End Sub
Je vous remercie d'avance pour votre aide et conseils,
tr=E8s cordialement,
P.S - Répond en haut du fil... pour les lecteurs c'est très fastidieux de devoir l'ascenseur continuellement.
"Emile63" a écrit dans le message de groupe de discussion :
On 16 ene, 13:52, "michdenis" wrote:
En supposant que le nom de tes vues et la caractéristique que tu leur as associé est statique, ceci aurait été suffisant ...
Je te suggère de faire référence à une feuille particulière pour tes conditions. CustomViews est une propriété du classeur cependant, une vue est une caractéristique d'une feuille.
Que tes 7 vues appartiennent à une feuille ou à des feuilles différentes, je te suggère fortement d'associer chacune des caractéristiques de chaque vue à la feuille qui lui convient.
Au lieu d'utiliser Worksheets("NomDeLaFeuille", il est préférable d'utiliser le nom de l'objet Feuille dans l'éditeur de code.
Si ta proc '------------------------------------ Sub Aff_vues()
With Worksheets("NomDeTaFeuille") If .Columns("IV:IV").EntireColumn.Hidden = True Then MaVue = "SonNom1" ElseIf .Columns("IU:IU").EntireColumn.Hidden = True Then MaVue = "SonNom2" ElseIf .Columns("IT:IT").EntireColumn.Hidden = True Then MaVue = "SomNom3" ElseIf .Columns("IS:IS").EntireColumn.Hidden = True Then MaVue = "SomNom4" ElseIf .Columns("IR:IR").EntireColumn.Hidden = True Then MaVue = "SomNom5" ElseIf .Columns("IQ:IQ").EntireColumn.Hidden = True Then MaVue = "SomNom6" ElseIf .Columns("IP:IP").EntireColumn.Hidden = True Then MaVue = "SomNom7" Else: MaVue = "Ceci n'est pas une vue personalisée" End If Call imprime_vue_avec_nom(MaVue) End Sub '------------------------------------
"Emile63" a écrit dans le message de groupe de discussion :
Bonjour a tous et merci pour vos idées et pour votre aide. ;-) Grâce a vos idées j'ai résolu mon problème, certes c'est pas joli-joli, et je pense que les puristes deraient passer leurs chemin, mais ça fonctionne comme je le souhaitais.. :-) ------------------ Sub Aff_vues() Dim Vue As CustomView, MaVue As String Dim tableau_Noms(1 To 10) As String On Error Resume Next With ActiveWorkbook If .CustomViews.Count < 1 Then MsgBox "Pas de vues personnalisées", _ vbExclamation, _ .Name Exit Sub Else For Each Vue In .CustomViews x = x + 1 tableau_Noms(x) = Vue.Name Next End If End With If Columns("IV:IV").EntireColumn.Hidden = True Then MaVue > tableau_Noms(1) ' Ma vue 1 If Columns("IU:IU").EntireColumn.Hidden = True Then MaVue > tableau_Noms(2) ' Ma vue 2 If Columns("IT:IT").EntireColumn.Hidden = True Then MaVue > tableau_Noms(3) ' Ma vue 3 If Columns("IS:IS").EntireColumn.Hidden = True Then MaVue > tableau_Noms(4) ' Ma vue 4 If Columns("IR:IR").EntireColumn.Hidden = True Then MaVue > tableau_Noms(5) ' Ma vue 5 If Columns("IQ:IQ").EntireColumn.Hidden = True Then MaVue > tableau_Noms(6) ' Ma vue 6 If Columns("IP:IP").EntireColumn.Hidden = True Then MaVue = tableau_Noms (7) ' Ma vue 7 Else: MaVue = "Ceci n'est pas une vue personalisée" End If Call imprime_vue_avec_nom(MaVue) End Sub Sub imprime_vue_avec_nom(MaVue As String) Application.ScreenUpdating = False ActiveSheet.PageSetup.CenterHeader = "&""Verdana""&16" & "Vue parsonalisée: " & MaVue ' Nom de la vue ActiveWindow.SelectedSheets.PrintPreview Application.ScreenUpdating = True End Sub
Cordialement, Emile
Merci Michel pour cette précision, je vais en tenir compte et l'appliquer. ;-)
Tres cordialement,
Emile
P.S - Répond en haut du fil... pour les lecteurs c'est très
fastidieux de devoir l'ascenseur continuellement.
"Emile63" <sanz.emile@gmail.com> a écrit dans le message de groupe de discussion :
74b6aa6a-cb54-43a7-8a48-be17ed62592a@x8g2000yqk.googlegroups.com...
On 16 ene, 13:52, "michdenis" <michde...@hotmail.com> wrote:
En supposant que le nom de tes vues et la caractéristique
que tu leur as associé est statique, ceci aurait été suffisant ...
Je te suggère de faire référence à une feuille particulière pour
tes conditions. CustomViews est une propriété du classeur
cependant, une vue est une caractéristique d'une feuille.
Que tes 7 vues appartiennent à une feuille ou à des feuilles
différentes, je te suggère fortement d'associer chacune des
caractéristiques de chaque vue à la feuille qui lui convient.
Au lieu d'utiliser Worksheets("NomDeLaFeuille", il est préférable
d'utiliser le nom de l'objet Feuille dans l'éditeur de code.
Si ta proc
'------------------------------------
Sub Aff_vues()
With Worksheets("NomDeTaFeuille")
If .Columns("IV:IV").EntireColumn.Hidden = True Then
MaVue = "SonNom1"
ElseIf .Columns("IU:IU").EntireColumn.Hidden = True Then
MaVue = "SonNom2"
ElseIf .Columns("IT:IT").EntireColumn.Hidden = True Then
MaVue = "SomNom3"
ElseIf .Columns("IS:IS").EntireColumn.Hidden = True Then
MaVue = "SomNom4"
ElseIf .Columns("IR:IR").EntireColumn.Hidden = True Then
MaVue = "SomNom5"
ElseIf .Columns("IQ:IQ").EntireColumn.Hidden = True Then
MaVue = "SomNom6"
ElseIf .Columns("IP:IP").EntireColumn.Hidden = True Then
MaVue = "SomNom7"
Else: MaVue = "Ceci n'est pas une vue personalisée"
End If
Call imprime_vue_avec_nom(MaVue)
End Sub
'------------------------------------
"Emile63" <sanz.em...@gmail.com> a écrit dans le message de groupe de discussion :
8d6db8a4-6fe3-4950-8947-ccfcb7c31...@a29g2000pra.googlegroups.com...
Bonjour a tous et merci pour vos idées et pour votre aide. ;-)
Grâce a vos idées j'ai résolu mon problème,
certes c'est pas joli-joli, et je pense que les puristes deraient
passer leurs chemin,
mais ça fonctionne comme je le souhaitais.. :-)
------------------
Sub Aff_vues()
Dim Vue As CustomView, MaVue As String
Dim tableau_Noms(1 To 10) As String
On Error Resume Next
With ActiveWorkbook
If .CustomViews.Count < 1 Then
MsgBox "Pas de vues personnalisées", _
vbExclamation, _
.Name
Exit Sub
Else
For Each Vue In .CustomViews
x = x + 1
tableau_Noms(x) = Vue.Name
Next
End If
End With
If Columns("IV:IV").EntireColumn.Hidden = True Then MaVue > tableau_Noms(1) ' Ma vue 1
If Columns("IU:IU").EntireColumn.Hidden = True Then MaVue > tableau_Noms(2) ' Ma vue 2
If Columns("IT:IT").EntireColumn.Hidden = True Then MaVue > tableau_Noms(3) ' Ma vue 3
If Columns("IS:IS").EntireColumn.Hidden = True Then MaVue > tableau_Noms(4) ' Ma vue 4
If Columns("IR:IR").EntireColumn.Hidden = True Then MaVue > tableau_Noms(5) ' Ma vue 5
If Columns("IQ:IQ").EntireColumn.Hidden = True Then MaVue > tableau_Noms(6) ' Ma vue 6
If Columns("IP:IP").EntireColumn.Hidden = True Then
MaVue = tableau_Noms
(7)
' Ma vue 7
Else: MaVue = "Ceci n'est pas une vue personalisée"
End If
Call imprime_vue_avec_nom(MaVue)
End Sub
Sub imprime_vue_avec_nom(MaVue As String)
Application.ScreenUpdating = False
ActiveSheet.PageSetup.CenterHeader = "&""Verdana""&16" & "Vue
parsonalisée: " & MaVue ' Nom de la vue
ActiveWindow.SelectedSheets.PrintPreview
Application.ScreenUpdating = True
End Sub
Cordialement,
Emile
Merci Michel pour cette précision, je vais en tenir compte et
l'appliquer. ;-)
P.S - Répond en haut du fil... pour les lecteurs c'est très fastidieux de devoir l'ascenseur continuellement.
"Emile63" a écrit dans le message de groupe de discussion :
On 16 ene, 13:52, "michdenis" wrote:
En supposant que le nom de tes vues et la caractéristique que tu leur as associé est statique, ceci aurait été suffisant ...
Je te suggère de faire référence à une feuille particulière pour tes conditions. CustomViews est une propriété du classeur cependant, une vue est une caractéristique d'une feuille.
Que tes 7 vues appartiennent à une feuille ou à des feuilles différentes, je te suggère fortement d'associer chacune des caractéristiques de chaque vue à la feuille qui lui convient.
Au lieu d'utiliser Worksheets("NomDeLaFeuille", il est préférable d'utiliser le nom de l'objet Feuille dans l'éditeur de code.
Si ta proc '------------------------------------ Sub Aff_vues()
With Worksheets("NomDeTaFeuille") If .Columns("IV:IV").EntireColumn.Hidden = True Then MaVue = "SonNom1" ElseIf .Columns("IU:IU").EntireColumn.Hidden = True Then MaVue = "SonNom2" ElseIf .Columns("IT:IT").EntireColumn.Hidden = True Then MaVue = "SomNom3" ElseIf .Columns("IS:IS").EntireColumn.Hidden = True Then MaVue = "SomNom4" ElseIf .Columns("IR:IR").EntireColumn.Hidden = True Then MaVue = "SomNom5" ElseIf .Columns("IQ:IQ").EntireColumn.Hidden = True Then MaVue = "SomNom6" ElseIf .Columns("IP:IP").EntireColumn.Hidden = True Then MaVue = "SomNom7" Else: MaVue = "Ceci n'est pas une vue personalisée" End If Call imprime_vue_avec_nom(MaVue) End Sub '------------------------------------
"Emile63" a écrit dans le message de groupe de discussion :
Bonjour a tous et merci pour vos idées et pour votre aide. ;-) Grâce a vos idées j'ai résolu mon problème, certes c'est pas joli-joli, et je pense que les puristes deraient passer leurs chemin, mais ça fonctionne comme je le souhaitais.. :-) ------------------ Sub Aff_vues() Dim Vue As CustomView, MaVue As String Dim tableau_Noms(1 To 10) As String On Error Resume Next With ActiveWorkbook If .CustomViews.Count < 1 Then MsgBox "Pas de vues personnalisées", _ vbExclamation, _ .Name Exit Sub Else For Each Vue In .CustomViews x = x + 1 tableau_Noms(x) = Vue.Name Next End If End With If Columns("IV:IV").EntireColumn.Hidden = True Then MaVue > tableau_Noms(1) ' Ma vue 1 If Columns("IU:IU").EntireColumn.Hidden = True Then MaVue > tableau_Noms(2) ' Ma vue 2 If Columns("IT:IT").EntireColumn.Hidden = True Then MaVue > tableau_Noms(3) ' Ma vue 3 If Columns("IS:IS").EntireColumn.Hidden = True Then MaVue > tableau_Noms(4) ' Ma vue 4 If Columns("IR:IR").EntireColumn.Hidden = True Then MaVue > tableau_Noms(5) ' Ma vue 5 If Columns("IQ:IQ").EntireColumn.Hidden = True Then MaVue > tableau_Noms(6) ' Ma vue 6 If Columns("IP:IP").EntireColumn.Hidden = True Then MaVue = tableau_Noms (7) ' Ma vue 7 Else: MaVue = "Ceci n'est pas une vue personalisée" End If Call imprime_vue_avec_nom(MaVue) End Sub Sub imprime_vue_avec_nom(MaVue As String) Application.ScreenUpdating = False ActiveSheet.PageSetup.CenterHeader = "&""Verdana""&16" & "Vue parsonalisée: " & MaVue ' Nom de la vue ActiveWindow.SelectedSheets.PrintPreview Application.ScreenUpdating = True End Sub
Cordialement, Emile
Merci Michel pour cette précision, je vais en tenir compte et l'appliquer. ;-)