Microsoft 365 Problème en tête dans l'impression de la base de données

dubarre

XLDnaute Occasionnel
Bonjour à tous,

Espère que tout va bien en cette rentrée, je viens vous voir car j'ai un petit souci lors de l'impression avec certains critères de ma base de données je souhaite insérer une ligne au-dessus de ma base de données pour avoir le nombre de personnes sélectionnées dans l'impression automatiquement.

le problème est quand je décale le tableau d'une ligne vers le bas il me change l'en-tête de la base de données pour la mettre à la fin et je n'arrive pas a voir dans le code VBA qu'une personne a réalisé pour moi ou je dois changer ce décalage pour que cela fonctionne sur les images qui sont à la suite du code VBA montrent ce que cela fait après l'action de la demande d'impression pouvez-vous m'aider s'il vous plaît.

VB:
                                                            'Userform 6 (Editions Courante)

Option Explicit

Private MyColumnSort As String
Private MyCriteria As String
Private MyFilterColumn As String

Private Sub CommandButton1_Click()

UserForm13.Show

End Sub

Private Sub CommandButton2_Click() 'tous les Artiste order alpha

MyCriteria = "Liste par pays ordre alpha"
MyFilterColumn = ""
MyColumnSort = "M1"
TheImpressioniste

End Sub


Private Sub TheImpressioniste()

'$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
'Impression artistes tous pays                $
'$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

Sheets("BDD").Visible = True

Dim WS As Worksheet

Set WS = ThisWorkbook.Worksheets("BDD")

 If WS.AutoFilterMode = False Then
    WS.Range("A2").AutoFilter
 End If
 
If WS.AutoFilterMode = True Then
    If WS.FilterMode = True Then
        WS.ShowAllData
    End If
End If

If MyFilterColumn <> "" Then
WS.Range("A1").CurrentRegion.AutoFilter Field:=MyFilterColumn, Criteria1:=MyCriteria
End If

With WS
    .Range("A1").CurrentRegion.Sort Key1:=.Range(MyColumnSort), _
                                    Order1:=xlAscending, _
                                    Header:=xlYes
    .Columns("C:C").EntireColumn.Hidden = True
    .Columns("F:L").EntireColumn.Hidden = True
    .Columns("P:R").EntireColumn.Hidden = True
    .Columns("U:AI").EntireColumn.Hidden = True
    
    .Columns("A:A").ColumnWidth = 3
    .Columns("B:B").ColumnWidth = 6
    .Columns("D:D").ColumnWidth = 15
    .Columns("E:E").ColumnWidth = 15
    .Columns("D:D").ColumnWidth = 15
    .Columns("E:E").ColumnWidth = 15
    .Columns("N:N").ColumnWidth = 4
    .Columns("O:O").ColumnWidth = 6
    .Columns("R:R").ColumnWidth = 2
    .Columns("S:S").ColumnWidth = 3
    .Columns("T:T").ColumnWidth = 2
    
    With .PageSetup
    .Orientation = xlPortrait
    .Zoom = 120
    .CenterHeader = MyCriteria
    .PrintTitleRows = "$1:$1"
    End With
End With
 


Unload Me
Unload UserForm4
WS.PrintPreview

    'ActiveSheet.ShowAllData

With WS.Cells
.EntireColumn.Hidden = False
.EntireRow.Hidden = False
End With

With WS
.Columns("D:D").ColumnWidth = 30
.Columns("E:E").ColumnWidth = 30
End With

Sheets("BDD").Visible = True

UserForm4.Show

End Sub

Private Sub CommandButton3_Click()

MyCriteria = "Liste artistes par ordre alpha"
MyFilterColumn = ""
MyColumnSort = "D1"
TheImpressioniste

End Sub

Private Sub CommandButton4_Click()

Unload Me

UserForm10.Show

End Sub

Capture.PNG
Capture2.PNG
 

dubarre

XLDnaute Occasionnel
Bonjour on m'a donné la solution sur ce forum je partage cordialement.

 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 885
Membres
101 830
dernier inscrit
sonia poulaert