Bonjour André Baudoin
Message du 2006-05-24 08:54:
Je m'aperçois d'un fonctionnement qui me surprend, sans doute par manque de
compétence, à savoir les opérations possibles sur un tableaux de données suivant
son mode de création :
oPlage= oFeuille.getCellRangeByName("A1:A3")
tValeurs = oPlage.dataArray ' tValeurs déclaré en variant
vValeurs = tValeurs(k)) ' vValeurs déclaré en variant
Ceci semble bien fonctionner et est similaire à un exemple de la bible en
français (selon Bernard et Laurent)
Autre méthode utilisant un passage de paramètre :
function macTest ( tValeurs as variant ) as variant 'dans
Et là, en essayant de tourner cette méthode de plusieurs façons j'ai
toujours une erreur de plage d'index, je suis donc obligé de faire une
affectation valeur par valeur.
Je n'ai pas d'erreur et j'obtiens le bon résultat. vValeurs est un
tableau unidimensionnel (une ligne du tableau).
Sub testParametreTableau
dim oPlage as object, oFeuille as object, tValeurs, vValeurs
oFeuille = thisComponent.Sheets.getByName("Contenus")
oPlage= oFeuille.getCellRangeByName("D11:D13")
tValeurs = oPlage.dataArray
'vValeurs = tValeurs(1)
vValeurs = macTest(tValeurs, 1)
print vValeurs(0)
End Sub
function macTest ( mValeurs as variant, r as long ) as variant
dim xValeurs as variant
xValeurs= mValeurs(r)
macTest = xValeurs
end function
Bonne journée
Bernard