Page. GetResults-Methode (Visio)Page.GetResults method (Visio)

Ruft die Ergebnisse oder die Formeln vieler Zellen ab.Gets the results or formulas of many cells.

SyntaxSyntax

Ausdruck.expression. GetResults( _SID_SRCStream()_ , _Flags_ , _UnitsNamesOrCodes()_ , _resultArray()_ )

Ausdruck Eine Variable, die ein Page -Objekt darstellt.expression A variable that represents a Page object.

ParameterParameters

NameName Erforderlich/OptionalRequired/Optional DatentypData type BeschreibungDescription
SID_SRCStream()SID_SRCStream() ErforderlichRequired IntegerInteger Array, das die abzufragenden Zellen identifiziert.Array identifying cells to be queried.
FlagsFlags ErforderlichRequired IntegerInteger Kennzeichen, die die im Ergebnis zurückgegebenen Eintragstypen beeinflussen.Flags that influence the type of entries returned in results.
UnitsNamesOrCodes ()UnitsNamesOrCodes() ErforderlichRequired VariantVariant Array von Maßeinheiten, in denen die Ergebnisse zurückgegeben werden sollen.Array of measurement units that results are to be returned in.
resultArray ()resultArray() ErforderlichRequired VariantVariant Array, das die Ergebnisse oder Formeln abgefragter Zellen empfängt.Array that receives results or formulas of queried cells.

RückgabewertReturn value

NichtsNothing

BemerkungenRemarks

Die GetResults -Methode ähnelt der Result -Eigenschaft für das Cell -Objekt, mit dem Unterschied, dass Sie verwendet werden kann, um die Ergebnisse (Werte) vieler Zellen gleichzeitig abzurufen, statt jeweils eine Zelle zu erhalten.The GetResults method is like the Result property for the Cell object, except that it can be used to get the results (values) of many cells at once, rather than one cell at a time.

Für ein Page -Objekt können Sie die GetResults -Methode verwenden, um Ergebnisse einer beliebigen Gruppe von Zellen in einer beliebigen Gruppe von Formen der Seite abzurufen.For a Page object, you can use the GetResults method to get results of any set of cells in any set of shapes of the page.

SID_SRCStream() ist ein Array von ganzen 2-Byte-Zahlen.SID_SRCStream() is an array of 2-byte integers. Bei Page -Objekten sollte SID_SRCStream () ein eindimensionales Array von 4 n 2-Byte-Ganzzahlen für n >= 1 sein.For Page objects, SID_SRCStream() should be a one-dimensional array of 4 n 2-byte integers for n >= 1. Die GetResults-Methode interpretiert SID_SRCStream() folgendermaßen:The GetResults method interprets SID_SRCStream() as:

{sheetID, sectionIdx, rowIdx, cellIdx }n

Dabei ist die ID -Eigenschaft des Shape -Objekts auf der Seite, deren Zellen Ergebnis gewünscht wird, die Wert Tabelle .where sheetID is the ID property of the Shape object on the page whose cell result is desired.

Hinweis

Wenn die Tabellen -Nr in einem Eintrag visInvalShapeID (-1) ist oder wenn das untere Byte __ von dabei sectionidx visSectionInval (255) ist, wird der Eintrag ignoriert, und eine leere Variante wird im entsprechenden Ergebnisarray Eintrag zurückgegeben.If the sheetID in an entry is visInvalShapeID (-1) or if the bottom byte of sectionIdx is visSectionInval (255), the entry will be ignored and an empty variant will be returned in the corresponding results array entry. Der Grund hierfür ist, dass das gleiche SID_SRCStream () -Array für mehrere Aufrufe von GetResults ****, SetResults **** und ähnlichen Methoden verwendet werden kann, wobei der Anrufer nur geringfügige Änderungen am Datenstrom zwischen Aufrufen vornehmen muss.The reason for this is that the same SID_SRCStream() array can be used on several calls to GetResults, SetResults, and similar methods with the caller only needing to make minor changes to the stream between calls.

Der Parameter Flags gibt an, welcher Datentyp die zurückgegebenen Ergebnisse in ausgedrückt werden soll.The Flags parameter indicates what data type the returned results should be expressed in. Es sollte einen der folgenden Werte aufweisen.Its value should be one of the following.

KonstanteConstant WertValue BeschreibungDescription
visGetFloatsvisGetFloats 00 Ergebnisse werden als Double-Werte zurückgegeben (VT_R8).Results returned as doubles (VT_R8).
visGetTruncatedIntsvisGetTruncatedInts 11 Ergebnisse werden als abgeschnittene Long Integer-Werte zurückgegeben (VT_I4).Results returned as truncated long integers (VT_I4).
visGetRoundedIntsvisGetRoundedInts 22 Ergebnisse werden als gerundete Long Integer-Werte zurückgegeben (VT_I4).Results returned as rounded long integers (VT_I4).
visGetStringsvisGetStrings 33 Ergebnisse werden als String-Werte zurückgegeben (VT_BSTR).Results returned as strings (VT_BSTR).
visGetFormulasvisGetFormulas 44 Formeln werden als String-Werte zurückgegeben (VT_BSTR).Formulas returned as strings (VT_BSTR).
visGetFormulasUvisGetFormulasU 55 Formeln werden in universeller Syntax zurückgegeben (VT_BSTR).Formulas returned in universal syntax (VT_BSTR).

Der UnitsNamesOrCodes ()- Parameter ist ein Array, das steuert, in welchen Maßeinheiten einzelne Ergebnisse zurückgegeben werden.The UnitsNamesOrCodes() parameter is an array that controls what measurement units individual results are returned in. Jeder Eintrag im Array kann eine Zeichenfolge wie "inches", "inch", "in." oder "i" sein.Each entry in the array can be a string such as "inches", "inch", "in.", or "i". Zeichenfolgen können für alle unterstützten Visio-Einheiten wie Zentimeter, Meter, Meilen usw. verwendet werden.Strings may be used for all supported Visio units such as centimeters, meters, miles, and so on. Sie können auch die gewünschten Einheiten mit ganzzahligen Konstanten (visCentimeters, visInchesusw.) angeben, die von der Visio-Typbibliothek deklariert werden.You can also indicate desired units with integer constants (visCentimeters, visInches, and so on) declared by the Visio type library. Beachten Sie, dass die im Array UnitsNamesOrCodes () angegebenen Werte keine Auswirkung haben, wenn Flags visGetFormulasist.Note that the values specified in the UnitsNamesOrCodes() array have no effect if Flags is visGetFormulas.

Wenn UnitsNamesOrCodes () nicht NULL ist, erwartet die Anwendung ein eindimensionales Array von 1 <= u-Varianten.If UnitsNamesOrCodes() is not null, the application expects it to be a one-dimensional array of 1 <= uVariants. Jeder Eintrag kann eine Zeichenfolge oder ein ganzzahliger Code sein oder Empty (Nothing).Each entry can be a string or integer code, or empty (nothing). Wenn der i ' th-Eintrag leer ist, __ wird das zurückgegebene Ergebnis in den von UnitsNamesOrCodes (j) festgelegten Einheiten zurückgegeben, wobei j der Index des letzten vorherigen nicht leeren Eintrags ist.If the i 'th entry is empty, the i 'th returned result is returned in the units designated by UnitsNamesOrCodes(j), where j is the index of the most recent prior non-empty entry. Wenn Sie also möchten, dass sich alle zurückgegebenen Werte in denselben Einheiten befinden, müssen Sie nur ein UnitsNamesOrCodes () -Array mit einem Eintrag übergeben.Thus if you want all returned values to be in the same units, you need only pass a UnitsNamesOrCodes() array with one entry. Wenn kein vorheriger nicht leerer Eintrag vorhanden ist oder kein UnitsNameOrCodes () -Array angegeben wird, wird visNumber (0x20) verwendet.If there is no prior non-empty entry, or if no UnitsNameOrCodes() array is supplied, visNumber (0x20) is used. Dies bewirkt, dass interne Einheiten (wie die ResultIU -Eigenschaft eines Cell -Objekts) zurückgegeben werden.This causes internal units (like the ResultIU property of a Cell object) to be returned.

Wenn die GetResults -Methode erfolgreich ist, gibt results ein eindimensionales Array von n -Varianten zurück, die von NULL (0) bis n -1 indiziert sind.If the GetResults method succeeds, results returns a one-dimensional array of n variants indexed from zero (0) to n - 1. Der Typ der zurückgegebenen Varianten ist eine Funktion von Flags.The type of the returned variants is a function of Flags. Der resultArray () -Parameter ist ein out-Argument, das von **** der GetResults-Methode zugewiesen wird, die den Besitzer zurück an den Aufrufer übergibt.The resultArray() parameter is an out argument that is allocated by the GetResults method, which passes ownership back to the caller. Der Aufrufer sollte schließlich SafeArrayDestroy für das zurückgegebene Array ausführen.The caller should eventually perform SafeArrayDestroy on the returned array. Beachten Sie, dass SafeArrayDestroy den Nebeneffekt hat, bei dem die von den Einträgen des Arrays referenzierten Varianten gelöscht werden, sodass alle Zeichenfolgen, die die GetResults-Methode zurückgibt, dereserviert werden. ****Note that SafeArrayDestroy has the side effect of clearing the variants referenced by the array's entries, hence deallocating any strings the GetResults method returns. (Dies wird von Microsoft Visual Basic und Microsoft Visual Basic für Applikationen ausgeführt.)(Microsoft Visual Basic and Microsoft Visual Basic for Applications take care of this for you.)

BeispielExample

Im folgenden Beispiel wird die Verwendung der GetResults -Methode veranschaulicht.The following example shows how to use the GetResults method. Voraussetzung für das Beispiel ist ein aktives Zeichenblatt mit mindestens drei Shapes.This example assumes there is an active page that has at least 3 shapes on it. Die GetResults-Methode wird dazu verwendet, die Breite von Shape 1, die Höhe von Shape 2 und den Winkel von Shape 3 abzurufen.It uses the GetResults method to get the width of shape 1, the height of shape 2, and the angle of shape 3.

In diesem Beispiel wird **** die GetResults-Methode des Page -Objekts verwendet, um 3 Zellformeln abzurufen.This example uses the GetResults method of the Page object to get 3 cell formulas. Das Eingabearray weist vier Umsetzungsplätze für jede Zelle aus, dies wäre auch für Master-Objekte der Fall.The input array has 4 slots for each cell, as it also would for Master objects. Für Shape- oder Style-Objekte wären für jede Zelle nur drei Umsetzungsplätze erforderlich (Abschnitt, Zeile und Zelle).For Shape or Style objects, only 3 slots would be needed for each cell (section, row, and cell).

 
Public Sub GetResults_Example() 
 
 On Error GoTo HandleError 
 
 Dim intCounter As Integer 
 Dim aintSheetSectionRowColumn(1 To (3 * 4)) As Integer 
 
 aintSheetSectionRowColumn(1) = ActivePage.Shapes(1).ID 
 aintSheetSectionRowColumn(2) = visSectionObject 
 aintSheetSectionRowColumn(3) = visRowXFormOut 
 aintSheetSectionRowColumn(4) = visXFormWidth 
 
 aintSheetSectionRowColumn(5) = ActivePage.Shapes(2).ID 
 aintSheetSectionRowColumn(6) = visSectionObject 
 aintSheetSectionRowColumn(7) = visRowXFormOut 
 aintSheetSectionRowColumn(8) = visXFormHeight 
 
 aintSheetSectionRowColumn(9) = ActivePage.Shapes(3).ID 
 aintSheetSectionRowColumn(10) = visSectionObject 
 aintSheetSectionRowColumn(11) = visRowXFormOut 
 aintSheetSectionRowColumn(12) = visXFormAngle 
 
 'Get first two values in inches. The second element in 
 'the units array is left uninitialized (empty) because we 
 'want the second result in the same units as the first 
 'result. The third result is initialized in degrees. Note that 
 'units can be expressed as a string or an integer constant. 
 Dim avarUnits(1 To 3) As Variant 
 avarUnits(1) = "in." 
 avarUnits(3) = visDegrees 
 
 'Return results of cells as an array of floating point numbers. 
 Dim avarResults() As Variant 
 ActivePage.GetResults aintSheetSectionRowColumn, visGetFloats, _ 
 avarUnits, avarResults 
 
 For intCounter = 0 To 3 
 Debug.Print avarResults(intCounter) 
 Next 
 
 Exit Sub 
 
HandleError: 
 MsgBox "Error" 
 Exit Sub 
 
End Sub

Support und FeedbackSupport and feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation?Have questions or feedback about Office VBA or this documentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.