Syntaxe VBA pluriel, Sheet, Sheets, Cell, Cells

max.lander

XLDnaute Occasionnel
Bonjour à tous,


Encore en pleine exploration de ce langage, pouvez vous m’éclairer sur un point !

A quoi sert la marque du pluriel sur certains objets, notamment : Sheet/Sheets,
Cell/Cells, Row/Rows....

Y a t-il une différence ?

J'ai vraiment du mal à comprendre

Merci pour votre aie
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir max.lander,

En général quand il y a un 's', c'est qu'il s'agit de la collection de l'ensemble des objets. Sans 's', il s'agit d'un objet de la collection.

WorkSheets représente l'ensemble des feuilles de calcul d'un classeur.
WorkSheet représente une seule feuille de calcul.
WorkSheets est la collection de touts les WorkSheet d'un classeur.

Par exemple, pour afficher le nom de chaque feuille de calcul d'un classeur, on peut écrire la boucle:
VB:
sub afficher()
  dim wsh as worksheet       'représente un objet Feuille de calcul
   for each wsh in worksheets
      msgbox wsh.name
    next wsh
End Sub
Ce qui peut se lire: pour chaque feuille de calcul wsh de la collection WorkSheets, afficher le nom de la feuille de calcul sh.

A partir de la collection, on peut désigner un élément particulier de la collection:

  • WorkSheets("Feuil1") désigne la feuille de calcul de la collection WorkSheets dont le nom est Feuil1
  • WorkSheets(1) est la feuille de la collection WorkSheets qui a l'index N° 1.

On aurait pu écrire:
VB:
sub afficher2()
  dim i as integer
   for i=1 to worksheets.count
      msgbox worksheets(i).name
    next i
End Sub


 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonjour.
J'ajouterai juste une chose:
Il y a au moins une exception dans les graphiques: la collection SeriesCollection qui contient des objets Series
Heu… il n'existe pas à ma connaissance de type d'objet Sheet. Sheets est une collection d'éléments de type Object, vu qu'ils peuvent être soit Worksheet soit Chart.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour Dranreb :)
Bonjour.
J'ajouterai juste une chose:
Il y a au moins une exception dans les graphiques: la collection SeriesCollection qui contient des objets Series
Heu… il n'existe pas à ma connaissance de type d'objet Sheet. Sheets est une collection d'éléments de type Object, vu qu'ils peuvent être soit Worksheet soit Chart.


Je suis allé trop vite :mad:. Je m'en étais aperçu. J'étais en train de corriger quand tu as répondu. Mais tu as dégainé très vite ;)
 

Staple1600

XLDnaute Barbatruc
Bonjour à tous

Sinon voir l'aide en ligne qui pour le coup est vraiment en ligne désormais:mad:
Ce lien n'existe plus
(Même si on peut télécharger des *.chm pour ne point être connecté au net en permanence, avant quand dans VBE on appuyait sur F1, on avait l'aide VBA en local...)
 

bof

XLDnaute Occasionnel
bonjour,
Pour compléter la réponse, il n'existe pas non plus d'objet cell :
Cells peut désigner soit la collection des cellules d'une feuille soit une seule cellule, mais si on utilise parfois cell dans une une boucle du type
Code:
For each cell in range(...)
dans ce cas cell est une variable !

A+
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 206
Messages
2 086 207
Membres
103 157
dernier inscrit
youma