Bonjour,
Voici le code VBA utilisé mais à chaque fois que je lance une impression, une nouvelle sélection sur listbox rame pendant plus de 10 seconde alors que mon fichier ne comprend que 100 lignes. J'ai donc ajouté une macro pour imprimer (comme lu dans les forums) mais je dois quand même passer par Fichier / Imprimer pour sélectionner l'imprimante (soit N&B, soit couleur, soit PDF) et ça rame. Auriez-vous une solution ? Est-ce qu'il y a une erreur dans le code VBA qui serait responsable de cette lenteur ?
Merci,
Dim f
Sub essai()
Set f = Sheets("bd")
NomTableau = "Tableau1"
Adr = f.Range(NomTableau).Address
NbCol = f.Range(NomTableau).Columns.Count
Me.ListBox1.ListFillRange = f.Name & "!" & Adr
For c = 1 To NbCol
tempcol = tempcol & f.Range(NomTableau).Columns(c).Width * 1# & ";"
Next c
Me.ListBox1.ColumnHeads = True
ListBox1.ColumnCount = NbCol
ListBox1.ColumnWidths = tempcol
End Sub
Private Sub CommandButton1_Click()
essai
End Sub
Private Sub ListBox1_Click()
[J4] = ListBox1.Value
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cel As Range
Application.ScreenUpdating = False
If Not Application.Intersect(Target, Sheets("Fiche_binôme").Range("J4")) Is Nothing Then
Sheets("Fiche_binôme").Range("A11:A100").EntireRow.Hidden = False
For Each Cel In Sheets("Fiche_binôme").Range("A11:A100")
If Cel.Value <> "" And Cel.Value = 0 Then
Cel.EntireRow.Hidden = True
End If
Next
End If
ActiveSheet.DisplayPageBreaks = False
End Sub
Sub Impr()
ActiveSheet.DisplayPageBreaks = False
ActiveSheet.PrintOut Copies:=1
ActiveSheet.DisplayPageBreaks = False
End Sub