Copier le contenue d'une cellule dans autre classeur [Résolu/Fermé]

Signaler
Messages postés
191
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
14 février 2019
-
Messages postés
191
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
14 février 2019
-
Bonjour,
J'ai un petit soucis.
J'essaie de faire un code qui copie les valeurs des cellules de Q1 jusqu'à la cellule Q vide qui se trouve dans la feuil1 du classeur TG.xlsm et les colle dans la feuilz du classeur Doc.xlsm à partir de Y2.
J'aimerais copier uniquement les valeurs et pas les formules.

Sub copie ()

Dim I As Integer
Dim NomFichier As String
Dim j As Integer

NomFichier = "TG.xlsm"
J = 1
I = 1

Application.ScreenUpdating = False

Workbooks.open ("D:\users\moi\Desktop\doc\" & NomFichier )

Do While Range("Q1:Q" & j).value <> ""

Application.WindowState = xlMinimized
Range ("Q1:Q" & j).select
Sélection.copy
Active Windows. ScrollColumn = I
AvtiveWindow.Close
Range ("Y2:Y" & i).select
ActiveSheet.Paste
Loop
Next I
Next j
End sub


Seulement la premiere valeur se copie et un message me dit que la taille et la forme des données du presse papier ne correspondent pas à la zone sélectionné.

Quelqu'un pourrait m'aider svp.
Merci

1 réponse

Messages postés
4842
Date d'inscription
mercredi 22 octobre 2014
Statut
Membre
Dernière intervention
6 octobre 2017
660
Bonjour

Si vous ne voulez pas avec liaison, mais vraiment copier purement la valeur, il suffit de faire un copier simple (ctrl+c) et faire "collage spécial" (Menu Edition > Collage Spécial) et choisir Coller > Valeurs
Messages postés
191
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
14 février 2019
6
Bonjour et merci pour votre reponse.
Votre proposition est intéressante cependant ce n'est exactement ce que je voulais faire.
Je voulais en fait "automatiser" afin que si une valeur change, ou est ajouté, cela se fait dans les deux fichiers. Mais merci beaucoup.
J' ai trouvé la réponse qui en fait est évidente.

Workbooks (NomDuFichier).Sheets(nomdelafeuille).cells (I, j).value = workbooks(TG).sheets (feuil1).cells (I, j).value

Mais merci pour votre temps :)