Excel VBA définition zone d'impression

Résolu
Bonjour,

J'ai des tableaux de hauteur variable qui finissent tous par de lignes remplies de 0

j'ai essayé le code suivant mais je ne sais pas comment sortir de la boucle au bon moment. le Resume next arrête bien la macro au bon endroit mais me donne un message d'erreur.

Private Sub CommandButton1_Click()
Dim i As Integer
Dim j As Integer
For i = 1 To 100
j = i - 1
Range("F" & i).Select
If Range("F" & i).Value = 0 Then
ActiveSheet.PageSetup.PrintArea = "$A$1:$P" & j
Resume Next

'ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True'
End If
Next i
End Sub

2 réponses

  1. merci beaucoup
    1. après un essai, ça marche pas comme ça (renvoie le message "erreur"), j'essaie de trouver d'où ça vient...
    2. Contributeur
      peut-être l'histoire de terminer par une série de 0 à mon avis inutile....
  2. Contributeur
    bonjour

    essaies ce code
    Private Sub CommandButton1_Click()
         On Error GoTo erreur
         With ActiveSheet
              fin = .Columns("F").Find(0, .Range("F1"), xlValues).Row - 1
              .PageSetup.PrintArea = "$A$1:$P" & fin
              .PrintOut
         End With
         Exit Sub
    
    erreur:
         MsgBox "zone d'impression vide ou mal définie", vbCritical
    End Sub