Dernière ligne de page imprimée d'une feuille excel

  • Initiateur de la discussion Initiateur de la discussion titiexplorer
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

titiexplorer

Guest
Bonjour à tous

Je vous expose mon petit problème ; j'ai créé un code en vba pour récupérer dans une variable le numéro de la dernière ligne de chaque page imprimée d'une feuille de calcul qui en compte 6 au total. Voici le code :

Sub NbPages()
Dim nbP
Dim LP(6)
Dim i

nbP = Worksheets("Devis Entreprise").HPageBreaks.Count

For i = 1 To nbP
i = i + 1
LP(i) = Worksheets("Devis Entreprise").HPageBreaks.Item(i).Location.Row - 1
MsgBox LP(i)
Next i

End Sub

Il a fonctionné un certain temps et c'est en erreur sans raison apparente en me renvoyant : <L'indice n'appartient pas à la sélection.>

Si quelqu'un a une idée je suis preneur en vous remerciant par avance.
 
Re : Dernière ligne de page imprimée d'une feuille excel

Bonsoir titiexplorer, et bienvenue,

Tu as probablement dépassé les 6 pages et tu sors donc des limites du tableau LP.

Essaie donc en corrigeant comme ceci:

Code:
Sub NbPages()
Dim nbP
Dim LP()
Dim i

nbP = Worksheets("Devis Entreprise").HPageBreaks.Count
Redim LP(nbP)
For i = 1 To nbP
    i = i + 1
    LP(i) = Worksheets("Devis Entreprise").HPageBreaks.Item(i).Location.Row - 1
    MsgBox LP(i)
Next i

End Sub
Cordialement.
 
Re : Dernière ligne de page imprimée d'une feuille excel

Bonjour Papou-net

Tour d'abord merci pour ta réponse que je me suis empressé de tester, malheureusement même réponse : " l'indice n'appartient pas à la sélection " !!! Je ne vois rien qui cloche, je n'y comprends rien. Si toutefois une idée nouvelle vous venait je reste preneur.

Encore une fois merci

Très cordialement
 
Re : Dernière ligne de page imprimée d'une feuille excel

Bonsoir titiexplorer, et bienvenue,

Tu as probablement dépassé les 6 pages et tu sors donc des limites du tableau LP.

Essaie donc en corrigeant comme ceci:

Code:
Sub NbPages()
Dim nbP
Dim LP()
Dim i

nbP = Worksheets("Devis Entreprise").HPageBreaks.Count
Redim LP(nbP)
For i = 1 To nbP
    i = i + 1
    LP(i) = Worksheets("Devis Entreprise").HPageBreaks.Item(i).Location.Row - 1
    MsgBox LP(i)
Next i

End Sub
Cordialement.

Bonjour titiexplorer,

En relisant ton code je me pose la question sur l'incrémentation de la variable (i = i + 1). Elle est superflue puisque la boucle For...Next s'en charge déjà.

Sinon, peux-tu joindre une copie de ton fichier, sans données confidentielles bien sûr?

A +

Cordialement.
 
Re : Dernière ligne de page imprimée d'une feuille excel

Effectivement, ayant essayé pas mal de chose j'ai laissé cette incrémentation de la variable i qui ne me parait pas nécessaire je l'ai donc supprimée et réessayé mon code. Il a fonctionné 2 à 3 fois puis même erreur !
Je vous joint mon fichier test.
Je me demande si ce code est bien stable ? un code qui fonctionne un coup sur deux ... rarement vu.

Encore merci pour vous intéressé à mon problème.

Peut-être à bientôt.
 

Pièces jointes

Re : Dernière ligne de page imprimée d'une feuille excel

Affirmatif, j'ai fait moult essais et parfois ça marche, d'autres fois ça plante.

J'ai tenté la solution de copier tes données dans un nouveau fichier, le fonctionnement est resté erratique.

Pour le moment, je n'en vois pas la cause.

Bon WE.

Cordialement.
 
Re : Dernière ligne de page imprimée d'une feuille excel

Un grand merci tout de même d'avoir pris de ton temps pour de pencher sur mon soucis. Je vais essayer de contourner ce problème pour arriver à mes fins.

Peut-être à bientôt sur ce forum.

Bonne journée
 
Re : Dernière ligne de page imprimée d'une feuille excel

Bonjour,

j'a recopié tes données pour avoir 12 petites pages et ça fonctionne ici ...
j'ai même essayé ceci et pas de plantage 🙂

Lig = Split(LP(i), "$")
MsgBox LP(i) & " " & Lig(2)

Intéressant problème n'est ce pas une partie des mystères d'excel ? 🙂

P.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
341
Réponses
3
Affichages
843
S
Réponses
6
Affichages
2 K
soNZOOO
S
Retour