Bonjour,
y a t-il un moyen de connaitre le nombre de lignes "réelles" d'une plage (cette
plage contenant du texte, ou n'importe quoi ) ?
PS : Autre que de compter à la main, bien sûr![]()
Bonjour,
y a t-il un moyen de connaitre le nombre de lignes "réelles" d'une plage (cette
plage contenant du texte, ou n'importe quoi ) ?
PS : Autre que de compter à la main, bien sûr![]()
Bonjour Kwasin,
Je n'ai plus Office 97 depuis pas mal de temps donc je n'ai plus en mémoire la commande Excel 97 pour Vba qui permet de trouver la dernière ligne.
Mais de toutes façons je n'utilise pratiquement jamais ce type de macro.
Je préfère le système classique de programmation qui fonctionne aussi bien et aussi vite.
Donc essayer si Access 97 accepte ce code (Outils puis Macro puis Visual Basic Editor puis Insérer puis Module. Ensuite vous cliquez sur Module1 et dans la fenêtre de droite vous collez ce code) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
28
29
30 Sub Compt_lignes() Dim mf1 As Object Dim pl, dl As Long Dim col As Byte Dim cont As Variant Set mf1 = Sheets("Feuil1") 'variable contenant le N° de 1ère ligne à prendre en compte (modifiable) pl = 1 'variable qui contiendra le N° de dernière ligne à prendre en compte '(ne pas modifier) dl = 0 'variable contenant le N° de colonne à prendre en compte (modifiable) col = 1 Compteur: cont = mf1.Cells(pl, col) If IsEmpty(cont) Then dl = pl - 1 MsgBox "Votre feuille contient " & dl & " lignes" & Chr(10) & Chr(13) _ & "Cliquez sur OK pour fermer l'application.", _ vbOKOnly + vbInformation + vbApplicationModal, "Information" Exit Sub Else pl = pl + 1 GoTo Compteur End If End Sub
Merci pour ta réponse,
mais j'aurais préféré ne pas passé par le VBA. Plutot par une formule dans une cellule (comme SOMME( ), par exemple..) Ca n'existe pas en Excel ?
Re Kwasin,
Si bien sûr c'est faisable avec une fonction Excel (cette formule dans la cellule qui vous convient et vous indiquez votre plage) :
=LIGNES(A1:A16)
Amicalement.
Re-merci Jacques_Jean
Hélas cette fonction ne compte que les lignes ayant des nombres !![]()
et en plus ne tient pas compte des fusions !![]()
Re Kwasin,
Pour la 1ère affirmation, j'avoue que je ne comprends pas très bien. Dans mon exemple de plage, celle-ci était une plage vide, et le résultat donnait bien le nombre de lignes. Je peux y mettre des nombres, du texte et laisser des cellules vides, j'obtiens toujours le bon résultat.
Par contre, en ce qui concerne les cellules fusionnées vous avez raison. Deux cellules sur deux lignes différentes et qui sont fusionnées ne changent rien aux nombre de lignes pour Excel.
Mais si j'ai raison sur la 1ère partie (et pour Excel 2000 je suis sûr d'avoir raison) votre solution est ici que le contenu soit du texte ou des nombres mais à condition que vous n'ayez pas de cellules fusionnées vides :
=LIGNES(A1:A16)-NB.VIDE(A1:A16)
Partager