Partition, fonction

Mise à jour : novembre 2007

Retourne une chaîne représentant la plage calculée qui contient un nombre.

Public Function Partition( _
   ByVal Number As Long, _ 
   ByVal Start As Long, _ 
   ByVal Stop As Long, _ 
   ByVal Interval As Long _
) As String

Paramètres

  • Number
    Obligatoire. Long. Nombre entier que vous souhaitez localiser dans l'une des plages calculées.

  • Start
    Obligatoire. Long. Nombre entier qui indique le démarrage du jeu de plages calculées. Start ne peut pas être inférieur à 0.

  • Stop
    Obligatoire. Long. Nombre entier qui indique la fin du jeu de plages calculées. Stop ne peut pas être inférieur ou égal à Start.

  • Interval
    Obligatoire. Long. Nombre entier qui indique la taille de chaque plage calculée entre Start et Stop. Interval ne peut pas être inférieur à 1.

Exceptions

Type d'exception

Numéro de l'erreur

Condition

ArgumentException

5

Start < 0, Stop <= Start, ou Interval < 1.

Consultez la colonne « Numéro d'erreur » si vous mettez à niveau des applications Visual Basic 6.0 qui utilisent la gestion non structurée des erreurs. (Vous pouvez comparer le numéro d'erreur par rapport à Number, propriété (objet Err).) Toutefois, lorsque cela est possible, vous devez envisager de remplacer un tel contrôle d'erreurs par Vue d'ensemble de la gestion structurée des exceptions pour Visual Basic.

Notes

La fonction Partition calcule un ensemble de plages numériques, chacune contenant le nombre de valeurs spécifiées par Interval. La première plage commence à Start et la dernière se termine à Stop. La fonction Partition identifie ensuite la plage qui contient Number et retourne une chaîne décrivant cette plage. La plage est représentée dans la chaîne par "lowervalue:uppervalue", où la valeur la plus basse (lowervalue) de la plage est séparée de la valeur la plus élevée (uppervalue) par un signe deux-points (:).

Au besoin, la fonction Partition insère des espaces à gauche avant lowervalue et uppervalue de telle sorte que les deux arguments possèdent le même nombre de caractères que la représentation de chaîne de la valeur (Stop + 1). Ainsi, si vous utilisez la sortie de la fonction Partition avec plusieurs valeurs de Number, le texte obtenu pourra être correctement géré au cours d'un tri ultérieur éventuel.

Le tableau ci-dessous illustre certains exemples de chaînes pour des plages calculées à partir de trois jeux d'arguments Start, Stop, et Interval. Les colonnes "Première plage" et "Dernière plage" illustrent les plus petites et les plus grandes plages possibles attribuées aux valeurs de Start et Stop. Les colonnes "Avant première plage" et "Après dernière plage" indiquent les chaînes retournées pour les valeurs de Number inférieures à Start et supérieures à Stop, respectivement.

Start

Stop

Interval

Avant première plage

Première plage

Dernière plage

Après dernière plage

0

99

5

"   : -1"

"  0:  4"

" 95: 99"

"100:   "

20

199

10

"   : 19"

" 20: 29"

"190:199"

"200:   "

100

1010

20

"    : 99"

" 100: 119"

"1000:1010"

"1011:    "

Dans ce tableau, la troisième ligne illustre le résultat obtenu lorsque Start et Stop définissent un ensemble de nombres qui ne peut être divisé de façon égale par Interval. La dernière plage se termine à Stop, contient seulement 11 nombres, même si Interval est égal à 20.

Si Interval est égal à 1, la plage est "Number:Number", indépendamment des arguments Start et Stop. Par exemple, si Number est égal à 267, Stop à 1 000 et Interval à 1, Partition retourne " 267: 267".

Partition peut être utile lors de la création de requêtes de base de données. Vous pouvez créer une requête SELECT qui indique le nombre de commandes appartenant à diverses plages (par exemple, les commandes dont la valeur de facturation est comprise entre 1 et 1 000, entre 1 001 et 2 000, etc.).

Exemple

L'exemple suivant configure une série de plages pour les décennies de 1950 à 2049. Il localise la valeur de year dans la plage appropriée et retourne une valeur String qui affiche la plage. Si year a une valeur de 1984, par exemple, Partition retourne à "1980:1989".

Dim year As Long = 1984
' Assume the value of year is provided by data or by user input.
Dim decade As String
decade = Partition(year, 1950, 2049, 10)
MsgBox("Year " & CStr(year) & " is in decade " & decade & ".")

Configuration requise

Espace de noms :Microsoft.VisualBasic

**Module :**Interaction

**Assembly :**bibliothèque Visual Basic Runtime (dans Microsoft.VisualBasic.dll)

Voir aussi

Référence

Membres de la bibliothèque runtime Visual Basic

Interaction, module (Visual Basic)