Syntaxe wb.ws.Range ?

OursOuzbek

XLDnaute Nouveau
Bonjour !

J'ai un léger soucis auquel je ne trouve pas de solution :

le code suivant ne fonctionne pas :
Code:
Dim WbMF As Workbook
Set WbMF = Workbooks("ModeleFacture-xxx.xlsm")

Dim WsMF As Worksheet
Set WsMF = Sheets("Modèle Facture")

Dim CC As String
CC = Workbooks("ModeleFacture-xxx.xlsm").Worksheets("Modèle Facture").Range("D13").Value
CC = WbMF.WsMF.Range("D13").Value


Le premier "CC" ne me renvoie pas d'erreur, mais le deuxième, oui. (erreur 438 : propriété ou méthode non gérée par cet objet)

Alors qu'ils sont, d'après moi, censés être exactement les mêmes. Je n'arrive pas à cerner d'où vient le problème de syntaxe.

(normalement, je ne suis censé déclarer que le 2ème CC, le 1er est juste un test pour voir si le code "développé" fonctionnait bien. Les noms de fichiers / feuilles seront peut être amené à être changé prochainement, d'où l'idée de vouloir le déclarer en variable)

Une idée ?

Merci d'avance.
 

pierrejean

XLDnaute Barbatruc
bonjour OursOuzbek

A tester:
Code:
Dim WbMF As Workbook
Set WbMF = Workbooks("ModeleFacture-xxx.xlsm")
Dim WsMF As String
WsMF = "Modèle Facture"
Dim CC As String
CC = Workbooks("ModeleFacture-xxx.xlsm").Worksheets("Modèle Facture").Range("D13").Value
CC = WbMF.Sheets(WsMF).Range("D13").Value
 

pierrejean

XLDnaute Barbatruc
RE

A tester egalement
Code:
Dim WbMF As Workbook
Set WbMF = Workbooks("ModeleFacture-xxx.xlsm")
Dim WsMF As Sheet
Set WsMF = WbMF.Sheets("Modèle Facture")
Dim CC As String
CC = Workbooks("ModeleFacture-xxx.xlsm").Worksheets("Modèle Facture").Range("D13").Value
CC = WsMF.Range("D13").Value
 

Discussions similaires

Réponses
6
Affichages
293
Réponses
1
Affichages
310

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 086
Messages
2 085 197
Membres
102 814
dernier inscrit
JLGalley