Boucle avec Condition et Affichage dans plusieurs lignes en VBA-Excel
Bonjour
Je fais mes premiers pas dans VBA et j'ai de la difficulté à comprendre et à effectuer les boucles avec condition et les afficher dans différents cellules de la même colonne.
Je veux avoir dans la colonne "C" le numéro de page de mon fichier si est seulement si la colonne "B" de la même ligne est une lettre (un "x" par exemple). Ceci sur toutes lignes de la même colonne jusqu’à la dernière activé (avec un "x"). Pour pouvoir faire un Index avec un lien en Excel
Voici la Macro pour afficher le numéro de page de la cellule active actuellement. Elle fonctionne très bien (même si l'affichage est long) mais elle affiche seulement le #page dans la case sélectionné. J'essaie de la modifier mais je n'arrive pas à faire la boucle avec la condition de la colonne "B" pour avoir le #page dans toutes les cellules de "C"
i.e. exemple.: Si "$B176" contient une "x" met le numéro de la page (voir macro suivante) dans "$C176" jusqu'à la dernière ligne active. J'espère être assez claire dans ma demande.
Est-ce que quelqu'un peut m'aider, svp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| Sub NbrPageCell()
Dim xVPC As Integer
Dim xHPC As Integer
Dim xVPB As VPageBreak
Dim xHPB As HPageBreak
Dim xNumPage As Integer
xHPC = 1
xVPC = 1
If ActiveSheet.PageSetup.Order = xlDownThenOver Then
xHPC = ActiveSheet.HPageBreaks.Count + 1
Else
xVPC = ActiveSheet.VPageBreaks.Count + 1
End If
xNumPage = 1
For Each xVPB In ActiveSheet.VPageBreaks
If xVPB.Location.Column > ActiveCell.Column Then Exit For
xNumPage = xNumPage + xHPC
Next
For Each xHPB In ActiveSheet.HPageBreaks
If xHPB.Location.Row > ActiveCell.Row Then Exit For
xNumPage = xNumPage + xVPC
Next
ActiveCell = xNumPage
End Sub |
Merci d'avance