Didine981 a écrit :
Mais je veux donner le nom qu'à une seule cellule à la fois...
J'ai bien essayé :
Code :
- ActiveWorkbook.Names.Add Name:=CStr(resource.parentNode.parentNode.getAttribute("UID" )), RefersToR1C1:="=" + Range("Taches" ).Offset(indice, 0).Name
|
mais ca ne fonctionne pas mieux .
Le problème vient peut être du fait que l'identifiant que je veux inséré est en réalité une chaine de caractères un peu spéciale du genre : "AJ3I-%'?! ..."
Ne faut-il pas respecter certaines règles pour les Names ?
|
premièrement pour :
"CStr(resource.parentNode.parentNode.getAttribute("UID" ))"
ça renvois un identifiant bizare tu dis ? genre "AJ3I-%'?! ..."
-> essaye d'affecter un identifiant à la main dans une feuille vierge pour voir si ça passe...
(ça te fera une erreur de type "Vous devez taper une référence valide (...)" )
ensuite pour :
Code :
- RefersToR1C1:="=" + Range("Taches" ).Offset(indice, 0).Name
|
me parait faux, la propriété Name du range ne renvoie pas l'adresse absolue (enfin je pense pas)
j'aurai plutot utiliser un truc du style :
Code :
- Dim strName As String
- Dim strRefersToR1C1 As String
- strName = CStr(resource.parentNode.parentNode.getAttribute("UID" ))
- With ActiveSheet
- strRefersToR1C1 = "=" & .Name & "!" & .Range("A10:F16" ).Offset(1, 0).Address(, , xlR1C1)
- End With
- ActiveWorkbook.Names.Add Name:=strName, RefersToR1C1:=strRefersToR1C1
|
bref utiliser la propriété Address d'un range au lieu de name...
Message édité par Xxxaaavvv le 07-05-2008 à 15:36:52