définir une impression suivant un nombre

archi

XLDnaute Impliqué
Bjr,
en s'appuyant sur la macro suivante:

Sub Definir2()
MaLigne = Range("O65536").End(xlUp).Row
Range("B2:AS" & MaLigne).Select
ActiveSheet.PageSetup.PrintArea = "$B$2:$AS$" & MaLigne
End Sub

Comment rajouter l'argument qui consiste à définir la dernière cellule en colonne O qui contient la valeur "1" ?

merci d'avance
Bye
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : définir une impression suivant un nombre

Bonjour Archi,

essaie ceci
Code:
Sub Definir2()
Dim derligne 'celle contenant la valeur 1
Maligne = Range("O65536").End(xlUp).Row
For i = Maligne To 1 Step -1
    If Range("O" & i).Value = 1 Then
    derligne = i
    Exit For
    End If
Next i
Range("B2:AS" & derligne).Select
ActiveSheet.PageSetup.PrintArea = "$B$2:$AS$" & derligne
End Sub

et reviens si problèmes
à+
Philippe
.
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : définir une impression suivant un nombre

Re,

il doit y avoir au moins une cellule de la colonne O qui doit contenir la valeur 1
sinon ça plante
N'oublie pas de mettre une ligne pour l'impression juste avant le End Sub
Code:
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

à+
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : définir une impression suivant un nombre

Re,

remplace le code par celui-ci
Code:
Sub Definir2()
Dim derligne
Dim Maligne
Dim i
'celle contenant la valeur 1
Maligne = Range("O65536").End(xlUp).Row
For i = Maligne To 1 Step -1
    If Range("O" & i).Value = 1 Then
    derligne = i
    GoTo fin
    Exit For
    End If
Next i
fin:
Range("D6:N" & derligne).Select
ActiveSheet.PageSetup.PrintArea = "$D$6:$N$" & derligne
' mettre ici la ligne pour imprimer
End Sub

j'ai testé ça marche

à+
Philippe
.
 

Discussions similaires

Statistiques des forums

Discussions
312 493
Messages
2 088 946
Membres
103 989
dernier inscrit
jralonso