Problème fonction range (tranfert données d'une feuille à une autre)

Bonjour, je ne comprend pas pourquoi mon code ne fonctionne pas au niveau de "datafound = ....."

à cause de la du range sur plusieurs cellules : si je fais ça avec une seule cellule cela fonctionne !! (donc pas de soucis du coté du chemin)

merci à vous !!

Dim wb As Workbook
Dim chemin As String
Dim fichier As String
Dim dossier As String
dossier = Sheets("liste projets").Range("A1:G15").Find("Chemin").Offset(0, 1).Text & "\"

fichier = Sheets("liste projets").Cells(25, 6).Text
chemin = dossier & fichier

Set wb = GetObject(chemin)

datafound = wb.Sheets(1).Range(Cells(43, 5), Cells(43, 35)).Value 'la macro s'arrête ici

Sheets("Corporate tax").Range(Cells(25, 10), Cells(25, 20)).Value = datafound

wb.Close savechanges:=False

Bonjour

et comme ceci

Dim wb As Workbook
Dim chemin As String
Dim fichier As String
Dim dossier As String

dossier = Sheets("liste projets").Range("A1:G15").Find("Chemin").Offset(0, 1) & "\"
fichier = Sheets("liste projets").Cells(25, 6) & "\"
chemin = dossier & fichier

Set wb = GetObject(chemin)

Sheets("Corporate tax").Range(Cells(25, 10), Cells(25, 20)).Value = wb.Sheets(1).Range(Cells(43, 5), Cells(43, 35)).Value

wb.Close savechanges:=False

Cordialement

Merci pour la réponse rapide !!

ça ne fonctionne cependant pas :(

le

& "\" 

au niveau de fichier =, fait bloquer.

en l'enlevant ça bloque à ce niveau :
Sheets("Corporate tax").Range(Cells(25, 10), Cells(25, 20)).Value = wb.Sheets(1).Range(Cells(43, 5), Cells(43, 35)).Value

en simplifiant le code qui ne fonctionne pas :

Dim wb As Workbook
Dim chemin As String

chemin = "C:\Users\thomas.schoen\Documents\plan automatisé\Bptest\BP 2021 - BARRAGE CONGO 1.xlsm"

Set wb = GetObject(chemin)
Sheets(2).Range(Cells(25, 10), Cells(25, 20)).Value = wb.Sheets(1).Range(Cells(43, 5), Cells(43, 35)).Value

wb.Close savechanges:=False

alors que ce code fonctionne :

Dim wb As Workbook
Dim chemin As String

chemin = "C:\Users\thomas.schoen\Documents\plan automatisé\Bptest\BP 2021 - BARRAGE CONGO 1.xlsm"

Set wb = GetObject(chemin)
Sheets(2).Range(Cells(25, 10), Cells(25, 20)).Value = wb.Sheets(1).Cells(43, 35).Value

wb.Close savechanges:=False

celui-ci fonctionne également :

Dim wb As Workbook
Dim chemin As String

chemin = "C:\Users\thomas.schoen\Documents\plan automatisé\Bptest\BP 2021 - BARRAGE CONGO 1.xlsm"

Set wb = GetObject(chemin)
Sheets(2).Range(Cells(25, 10), Cells(25, 20)).Value = wb.Sheets(1).Range("E81:AH81").Value

wb.Close savechanges:=False

Merci !!

Re,

Je me suis servi de votre code dans votre premier post. Sans fichier ce n'est pas facile de comprendre

Ce qu'il faut savoir, c'est le répertoire dans lequel se trouve le fichier et le nom du fichier

Votre nom de fichier c'est --> BP 2021 - BARRAGE CONGO 1.xlsm ?

Dans cette ligne qui ne fonctionne pas vous pouvez essayer plutôt ceci mais il faut que le nombre de cellule dans les deux plages soient identiques
Sheets(2).Range(Cells(25, 10), Cells(25, 20)).Value = wb.Sheets(1).Range(wb.Sheets(1).Cells(43, 5), wb.Sheets(1).Cells(43, 35)).Value

Merci pour votre réponse, !

oui c'est mon fichier

je vous prépare un fichier alors si le problème ne vient pas du nombre de case

Bonjour

Oui avec un fichier ce serait plus facile. Sinon essayez aussi

chemin = "C:\Users\thomas.schoen\Documents\plan automatisé\Bptest\"
Fichier = "BP 2021 - BARRAGE CONGO 1.xlsm"
Set wb =getobject(chemin & fichier)

ou ceci

Chemin = Thisworkbook.path & "\"
Fichier = "BP 2021 - BARRAGE CONGO 1.xlsm"
Set wb =getobject(chemin & fichier)
Rechercher des sujets similaires à "probleme fonction range tranfert donnees feuille"