Cell.Precedents, propriété (Visio)
Renvoie un tableau de cellules ShapeSheet dont dépend la formule d’une autre cellule. En lecture seule.
Syntaxe
expression. Précédents
Expression Variable qui représente un objet Cell .
Valeur renvoyée
Cell()
Remarques
La propriété Precedents renvoie un tableau des cellules qui entraînent le recalcul de la valeur de l’objet Parent Cell lorsque leur formule ou valeur change.
Exemple
La macro Microsoft Visual Basic pour Applications (VBA) suivante montre comment utiliser la propriété Precedents pour afficher une liste de cellules dont dépend la cellule « Scratch.X1 » d’une forme. La macro dessine un rectangle sur la page active, ajoute une section Scratch à la feuille ShapeSheet du rectangle, puis entre une formule dans une cellule de cette section qui est utilisée pour incliner les côtés du rectangle vers l’intérieur, en remplaçant chacun des rectangles en arc. Étant donné que la formule utilisée pour incliner les côtés du rectangle dépend de la largeur et de la hauteur du rectangle, la cellule qui contient la formule, Scratch.X1, dépend des cellules Width et Height de la forme rectangle, ce qui fait de ces cellules des précédents.
Public Sub Precedents_Example()
Dim acellPrecedentCells() As Visio.Cell
Dim vsoCell As Visio.Cell
Dim vsoShape As Visio.Shape
Dim strBowCell As String
Dim strBowFormula As String
Dim intCounter As Integer
'Set the value of the strBowCell string
strBowCell = "Scratch.X1"
'Set the value of the strBowFormula string
strBowFormula = "=Min(Width, Height) / 5"
'Draw a rectangle on the active page
Set vsoShape = ActivePage.DrawRectangle(1, 5, 5, 1)
'Add a scratch section and then
vsoShape.AddSection visSectionScratch
'Add a row to the scratch section
vsoShape.AddRow visSectionScratch, visRowScratch, 0
'Place the value of strBowFormula into Scratch.X1
'Set the Cell object to the Scratch.X1 and set formula
Set vsoCell = vsoShape.Cells(strBowCell)
'Set up the offset for the arc
vsoCell.Formula = strBowFormula
'Bow in or curve the original rectangle's lines by changing
'each row to an arc and entering the bow value
For intCounter = 1 To 4
vsoShape.RowType(visSectionFirstComponent, visRowVertex + intCounter) = visTagArcTo
Set vsoCell = vsoShape.CellsSRC(visSectionFirstComponent, visRowVertex + intCounter, 2)
vsoCell.Formula = "-" & strBowCell
Next intCounter
'Get the array of precedent cells
acellPrecedentCells = vsoShape.Cells("Scratch.X1").Precedents
'List the cell names and their associated formula
For intCounter = LBound(acellPrecedentCells) To UBound(acellPrecedentCells)
Set vsoCell = acellPrecedentCells(intCounter)
Debug.Print vsoCell.Name & " has this formula: " & vsoCell.Formula
Next
End Sub
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.