'************************************************************************* ' ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2000, 2010 Oracle and/or its affiliates. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' This file is part of OpenOffice.org. ' ' OpenOffice.org is free software: you can redistribute it and/or modify ' it under the terms of the GNU Lesser General Public License version 3 ' only, as published by the Free Software Foundation. ' ' OpenOffice.org is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY; without even the implied warranty of ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ' GNU Lesser General Public License version 3 for more details ' (a copy is included in the LICENSE file that accompanied this code). ' ' You should have received a copy of the GNU Lesser General Public License ' version 3 along with OpenOffice.org. If not, see ' ' for a copy of the LGPLv3 License. ' '************************************************************************* ***** '************************************************************************* ' Be sure that all variables are dimensioned: option explicit Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.sheet.XFunctionDescriptions '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim fId,count As Long Dim fName As String Dim funct As Object Dim i,j As Long Test.StartMethod("getById()") bOK = true count = oObj.count Dim retfunct() As Variant for i = 0 to count - 1 funct = oObj.getByIndex(i) for j = 0 to ubound(funct) if funct(j).Name = "Name" then fName = funct(j).Value if funct(j).Name = "Id" then fId = funct(j).Value next j Out.Log("Function " & i & ") " & fName & " has Id = " & fId) retfunct = oObj.getById(fId) for j = 0 to ubound(retfunct) if retfunct(j).Name = "Name" then bOK = bOK AND retfunct(j).Value = fName next j next i Test.MethodTested("getById()", bOK) Exit Sub ErrHndl: Test.Exception() bOK = false resume next End Sub