Problème définition Range dans fichier distant

ludo27

XLDnaute Junior
Bonsoir,
J'essaie de définir un range à partir de cellules situées dans un classeur distant de celui où le code s'exécute.

shtSource désigne l'onglet du classeur distant.

Code:
Set rgBegin = shtSource.Range("A1")
Fonctionne bien et on peut accéder sans souci à
Code:
rgBegin.cells(1,1).value
par exemple.

En revanche je ne peux pas définir de range à partir de rgBegin par exemple :
Code:
Range(rgBegin , rgBegin .End(xlToRight))
ou
Code:
Range(rgBegin .Offset(0, 0), rgBegin .Offset(0, 10))

J'obtiens l'erreur
Erreur définie par l'application ou par l'objet

Est-il possible de définir et d'utiliser un range sur des cellules situées dans un autre fichier ?

Merci :)
 

skoobi

XLDnaute Barbatruc
Re : Problème définition Range dans fichier distant

Bonjour,

Quand tu fais référence à un autre fichier (ou feuille), il faut toujours le préciser quand tu utilise "Range".
Soit avec With:

With shtSource
.Range........
End with

soit comme ceci
shtSource.Range
même si "rgBegin" y fais déjà référence.
Essaye ceci:
Code:
shtSource.Range(rgBegin .Offset(0, 0), rgBegin .Offset(0, 10))
 

ludo27

XLDnaute Junior
Re : Problème définition Range dans fichier distant

Merci Skoobi, ça marche très bien ;)

Juste une petite question d'optimisation :

Est-ce qu'on peut réduire un peu l'écriture :

Code:
dQty = shtSource.Range(rg.Offset(lLi, lCol), rg.Offset(lLi, lCol)).Cells(1, 1).Value

Pour atteindre une cellule ?

Code:
 dQty = shtSource.Range(rg).Offset(lLi, lCol).Value
ne marche pas.

Bon en tout cas je suis dépanné; merci beaucoup !
 

ludo27

XLDnaute Junior
Re : Problème définition Range dans fichier distant

Bonjour,

d'après ce que tu écris, "rg" est un Range donc:

Code:
dQty = shtSource.rg.Offset(lLi, lCol).Value
Oui, rg est bien un Range mais
Code:
shtSource.rg
n'est pas reconnu.

J'ai fait une petite fonction pour ne pas avoir à copier toute la ligne
Code:
shtSource.Range(rg.Offset(lLi, lCol), rg.Offset(lLi, lCol)).Cells(1, 1).Value
à chaque fois.

Merci. :)
 

Discussions similaires

Réponses
2
Affichages
138

Statistiques des forums

Discussions
312 468
Messages
2 088 682
Membres
103 919
dernier inscrit
BOB66500