Savoir si la rangée X est excel.XlPageBreak.xlPageBreakAutomatic [Résolu]

Signaler
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
-
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
-
Bonjour à tous
excel via vb.net

j'écris dans la colonne A1
j'aimerais savoir si la prochaine cells
se trouve dans une nouvelle page

j'essaye d'écrire
If .Rows(numbersrows).PageBreak = excel.XlPageBreak.xlPageBreakAutomatic Then


j'ai une erreur de syntaxe à Rows(numbersrows)

si j'écris comme ça
If .Rows().PageBreak = excel.XlPageBreak.xlPageBreakAutomatic Then


il n'y a plus d'erreur mais la condition
n'est jamais effectué

merci d'avance

3 réponses

Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
49
j'ai trouvé

Dim r As excel.Range

 r = CType(xlworksheet.Rows(numbersrows), excel.Range)
 If r.PageBreak = excel.XlPageBreak.xlPageBreakAutomatic Then
 

end if 
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
Bonjour, shayw,
- dans le bloc With de quel objet (et défini comment) ?
- où et comment a été definie la variable numbersrows ?

J'ai par ailleurs quelques doutes quant à la capacité de Excel (et de son VBA) de déterminer, avant qu'il n'existe, un saut de page. La constatation de ce saut de page pourra par contre être faite si la prochaine cellule existe déjà dans le usedrange



________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
49
Bonjour Ucfoutu

Dim objexcel As New excel.Application
Dim xlBook As excel.Workbook
Dim xlworksheet As excel.Worksheet
Dim numbersrows As Integer
try

xlBook = objexcel.Workbooks.Add
            xlworksheet = CType(xlBook.ActiveSheet, excel.Worksheet)
objexcel.Visible = True
With xlworksheet
for numbersrows = 1 to 100
'ici dans l'editeur du vb.net le if.rows
' est souligné 
 
  If .Rows(numbersrows).PageBreak =    excel.XlPageBreak.xlPageBreakAutomatic Then

End If
next

 End With
objexcel = Nothing
Catch ex As Exception
    MessageBox.Show(ex.Message)
End Try