Pb execution macro recopie de données

pietrus2

XLDnaute Nouveau
Bonjour le forum,
Dans le code ci joint, qui me servira le jour ou je trouverai solution à mon problème. Je souhaite recopier les données d'une feuille excel vers un autre fichier excel, mais j'ai une contrainte, le nom de la feuille ou sont les données et renseigné dans la feuille source, j' l'enregisteà chaque fois dans "nomfeuille"

Le problème c'est que la macro bloque à partir de la ligne :
With .Sheets(nomfeuille) (voir code)

pouvez vous m'aider ?

Merci
======================================

Sub copie_cyclnvoprod()

Workbooks.Open "\\PRODUIT\Cycle de développement d’un nouveau produit.xls", 0
Workbooks("Suivi indicateurs.xls").Activate
nomfeuille = Str(Cells(4, 8).Value)

With Workbooks("Cycle de développement d’un nouveau produit.xls")


With .Sheets(nomfeuille)
Range("D7:N9").Select
Selection.Copy
Windows("Suivi indicateurs.xls").Activate
Range("E12:O14").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

End With
End With
Application.CutCopyMode = False
Workbooks("Cycle de développement d’un nouveau produit.xls").Close SaveChanges:=False
End Sub
 
Dernière édition:

Fchris

XLDnaute Occasionnel
Re : Pb execution macro recopie de données

Bonjour Pietrus, le forum,

Je ne suis pas expert en macro, mais essaie avec la petite modif ci-dessous, c'est ce que j'utilise et pour moi cela fonctionne :


Sub copie_cyclnvoprod()

Workbooks.Open "\\PRODUIT\Cycle de développement d’un nouveau produit.xls", 0
Workbooks("Suivi indicateurs.xls").Activate
nomfeuille = Str(Cells(4, 8).Value)

With Workbooks("Cycle de développement d’un nouveau produit.xls")


Sheets ("nomfeuille").select ==> Mets bien le nomfeuille entre guillemets
Range("D7:N9").Select
Selection.Copy
Windows("Suivi indicateurs.xls").Activate
Range("E12:O14").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

End With
End With
Application.CutCopyMode = False
Workbooks("Cycle de développement d’un nouveau produit.xls").Close SaveChanges:=False
End Sub

@+

Chris
 

Fchris

XLDnaute Occasionnel
Re : Pb execution macro recopie de données

Peux-tu joindre un bout de fichier sans données confidentielles pour que je puisse faire des tests en réels, ce sera plus simple avec un exemple concret.

Comme je te l'ai dis, je ne suis pas expert en macro, mais je vais faire ce que je peux pour te dépatouiller ça.

A te lire
 

pietrus2

XLDnaute Nouveau
Re : Pb execution macro recopie de données

En lien, les fichiers (en simplifiés ) que j'utilise

pierre
 

Pièces jointes

  • Cycle de développement d’un nouveau produit.xls
    35 KB · Affichages: 51
  • fichier source.xls
    28.5 KB · Affichages: 48
  • Cycle de développement d’un nouveau produit.xls
    35 KB · Affichages: 53
  • fichier source.xls
    28.5 KB · Affichages: 48
  • Cycle de développement d’un nouveau produit.xls
    35 KB · Affichages: 53
  • fichier source.xls
    28.5 KB · Affichages: 53

Fchris

XLDnaute Occasionnel
Re : Pb execution macro recopie de données

Pietrus,

Désolé, mais je bloque sur un problème de sélection. Je n'arrive pas à transférer la variable sur l'autre fichier, je bloque.

Je passe la main à quelqu'un d'autre sur le forum qui pourra sans doute t'aider plus facilement que moi.

Chris
 

pietrus2

XLDnaute Nouveau
Re : Pb execution macro recopie de données

Bonjour denioo,
En fait , dans mon fichier que j'ai appelé maladroitement source, au lieu de destination, je rentre le nom d'un projet dans la cellule H4 (pour l'exemple le projet est batisé 7800), a partir de la je clique sur le bouton qui exécute la macro ... qui est censé récuperer le texte de la cellule H4 et aller récuperer les données de la bonne feuille dans le fichier
Cycle de développement d’un nouveau produit.xls

c pas trai clair , mais je sais pas trop comment le dire autrement.
merci
 
T

THE CAT 2007

Guest
Re : Pb execution macro recopie de données

Bonjour,

Sub copie_cyclnvoprod()

Workbooks.Open "\\PRODUIT\Cycle de développement d’un nouveau produit.xls", 0
Workbooks("Suivi indicateurs.xls").Activate
nomfeuille = Str(Cells(4, 8).Value)

Workbooks("Cycle de développement d’un nouveau produit.xls").Activate
Sheets (nomfeuille).select ==> nomfeuille est une variable, pas de guillemets
Range("D7:N9").Select
Selection.Copy

Workbooks("Suivi indicateurs.xls").Activate
Range("E12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Workbooks("Cycle de développement d’un nouveau produit.xls").Close SaveChanges:=False
End Sub

celà va t il ?
 

Discussions similaires

Statistiques des forums

Discussions
313 344
Messages
2 097 336
Membres
106 916
dernier inscrit
Soltani mohamed