4D v17 R4 apporte de nouvelles fonctionnalités à 4D View Pro et l’une d’entre elles est la création de plages avec du code.
Tout d’abord, vous devez définir un objet de plage pour manipuler vos cellules par programmation. Vous pouvez le faire dans 4D View Pro avec les nouvelles commandes suivantes : VP Cell, VP Cells, VP Column, VP Row, VP All et VP Combine ranges.
Un objet plage peut définir :
- une cellule ou un groupe de cellules,
- une colonne ou un groupe de colonnes,
- une ligne ou un groupe de lignes
- toutes les cellules d’une feuille.
définir une cellule ou un groupe de cellules
Pour définir les coordonnées d’une seule cellule, utilisez la commande VP Cell pour définir les coordonnées d’une seule cellule :
$column:=3 //column of beginning cell
$row :=5 //row of beginning cell
$sheet :=2 // specific workbook sheet
$cellObj1 :=VP Cell ("ViewProArea" ;$column;$row) // cell D6 (current sheet)
$cellObj2 :=VP Cell ("ViewProArea" ;$column;$row;$sheet) // cell D6 sheet 3
N’oubliez pas que l’indice de ligne, l’indice de colonne et l’indice de feuille commencent à 0. Les coordonnées de la première cellule supérieure gauche sont donc (0;0) !
Un groupe de cellules est essentiellement défini en faisant référence à la cellule supérieure gauche et au nombre de rangées et de cellules. Transmettez ces informations à la commande VP Cells à la commande :
$column:=3 //column of beginning cell
$row :=5 //row of beginning cell
$columnCount :=2 // total number of columns
$rowCount :=3 // total number of rows
$sheet :=2 // specific workbook sheet
$cellsObj1 :=VP Cells ("ViewProArea" ;$column;$row;$columnCount;$rowCount) // cells D6 to E8 (current sheet)
$cellsObj2 :=VP Cells ("ViewProArea" ;$column;$row;$columnCount;$rowCount;$sheet) // cells D6 to E8 on sheet 3
définir une colonne ou un groupe de colonnes
Pour définir les coordonnées d’une colonne, passez l’index de la colonne à la commande VP Column pour définir les coordonnées d’une colonne. Si vous devez définir plusieurs colonnes contiguës, ajoutez un nombre de colonnes après l’indice de colonne :
$column:=3 // beginning column
$columnCount :=2 // total number of columns
$sheet :=2 // specific workbook sheet
$colObj1 :=VP Column ("ViewProArea" ;$column) // column D (current sheet)
$colObj2 :=VP Column ("ViewProArea" ;$column;$columnCount) // column D + column E (current sheet)
$colObj3 :=VP Column ("ViewProArea" ;$column;$columnCount;$sheet) // column D + column E sheet 3
définir une ligne ou un groupe de lignes
Pour définir les coordonnées d’une ligne, passez l’index de la colonne à la commande. VP Row. Si vous devez définir plusieurs lignes contiguës, ajoutez un nombre de lignes après l’indice de ligne :
$row:=5 // beginning row
$rowCount :=3 // total number of rows
$sheet :=2 // specific workbook sheet
$rowObj1 :=VP Row ("ViewProArea" ;$row) // row 6
$rowObj2 :=VP Row ("ViewProArea" ;$row;$rowCount) // row 6 + row 7 + row 8
$rowObj3 :=VP Row ("ViewProArea" ;$row;$rowCount;$sheet) // row 6 + row 7 + row 8 sheet 2
définir une plage de cellules irrégulières
Une plage de cellules irrégulière correspond au cas où vous devez combiner plusieurs groupes de cellules distincts (discontinus) au sein d’une même plage. Pour ce faire, créez une plage individuelle pour chaque groupe continu, puis passez-les toutes en paramètre à la commande VP Combine ranges à la commande :
$combine:=VP Combine ranges ($cellObj1;$colObj1;$rowObj1;rowObj2;cellsObj2)