OVH Cloud OVH Cloud

Copier coller repetitif d'un fichier fermé

3 réponses
Avatar
nbredin
Bonjour le forum,

Probl=E8me de VBA !!
Je dois copier des donn=E9es dans un fichier ferm=E9 et les coller dans un
nouveau. Ces donn=E9es sont sur x colonnes et y lignes. Je veux les
coller dans le nouveau fichier sur une seule colonne (lChaque colonne
de l'ancien fichier l'une en dessous de l'autre). POur cela j'ai essy=E9
de "bidouiller" du code trouver sur ce forum.. Mais ca ne fonctionne
pas et la je ne sais plus..

A l'origine il y avait un CellRange =E0 la place de (Cells (i, 5),
Cells(i, 29)) defini sous le format du style : A2:A25


For i =3D 3 To 34

With ActiveSheet.Range(Cells(i, 5), Cells(i, 29))
.Formula =3D "=3D'" & fPath & "\[" & fName & "]" _
& sName & "'!" & (Cells(i, 5), Cells(i, 29))
.Select
End With

.=2E...

Next i

Merci de votre aide

Nathalie

3 réponses

Avatar
Daniel
Bonjour.
Le plus simple est d'ouvrir le fichier le temps de la copie.
Cordialement.
Daniel
a écrit dans le message de news:

Bonjour le forum,

Problème de VBA !!
Je dois copier des données dans un fichier fermé et les coller dans un
nouveau. Ces données sont sur x colonnes et y lignes. Je veux les
coller dans le nouveau fichier sur une seule colonne (lChaque colonne
de l'ancien fichier l'une en dessous de l'autre). POur cela j'ai essyé
de "bidouiller" du code trouver sur ce forum.. Mais ca ne fonctionne
pas et la je ne sais plus..

A l'origine il y avait un CellRange à la place de (Cells (i, 5),
Cells(i, 29)) defini sous le format du style : A2:A25


For i = 3 To 34

With ActiveSheet.Range(Cells(i, 5), Cells(i, 29))
.Formula = "='" & fPath & "[" & fName & "]" _
& sName & "'!" & (Cells(i, 5), Cells(i, 29))
.Select
End With

.....

Next i

Merci de votre aide

Nathalie
Avatar
nbredin
On 23 fév, 09:08, "Daniel" wrote:
Bonjour.
Le plus simple est d'ouvrir le fichier le temps de la copie.
Cordialement.
Daniel
a écrit dans le message de news:

Bonjour le forum,

Problème de VBA !!
Je dois copier des données dans un fichier fermé et les coller dans un
nouveau. Ces données sont sur x colonnes et y lignes. Je veux les
coller dans le nouveau fichier sur une seule colonne (lChaque colonne
de l'ancien fichier l'une en dessous de l'autre). POur cela j'ai essyé
de "bidouiller" du code trouver sur ce forum.. Mais ca ne fonctionne
pas et la je ne sais plus..

A l'origine il y avait un CellRange à la place de (Cells (i, 5),
Cells(i, 29)) defini sous le format du style : A2:A25

For i = 3 To 34

With ActiveSheet.Range(Cells(i, 5), Cells(i, 29))
.Formula = "='" & fPath & "[" & fName & "]" _
& sName & "'!" & (Cells(i, 5), Cells(i, 29))
.Select
End With

.....

Next i

Merci de votre aide

Nathalie


Merci Daniel de ta réponse.
Je vais voir ca..

Nathalie

Avatar
nbredin
On 23 fév, 10:12, wrote:
On 23 fév, 09:08, "Daniel" wrote:





Bonjour.
Le plus simple est d'ouvrir le fichier le temps de la copie.
Cordialement.
Daniel
a écrit dans le message de news:

Bonjour le forum,

Problème de VBA !!
Je dois copier des données dans un fichier fermé et les coller dans un
nouveau. Ces données sont sur x colonnes et y lignes. Je veux les
coller dans le nouveau fichier sur une seule colonne (lChaque colonne
de l'ancien fichier l'une en dessous de l'autre). POur cela j'ai essy é
de "bidouiller" du code trouver sur ce forum.. Mais ca ne fonctionne
pas et la je ne sais plus..

A l'origine il y avait un CellRange à la place de (Cells (i, 5),
Cells(i, 29)) defini sous le format du style : A2:A25

For i = 3 To 34

With ActiveSheet.Range(Cells(i, 5), Cells(i, 29))
.Formula = "='" & fPath & "[" & fName & "]" _
& sName & "'!" & (Cells(i, 5), Cells(i, 29))
.Select
End With

.....

Next i

Merci de votre aide

Nathalie


Merci Daniel de ta réponse.
Je vais voir ca..

Nathalie- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Bon alors même avec le classeur ouvert il y un bug..
Comprends pas..
Extrait

For i = 1 To 6


Windows("Classeur1.xls").Activate
Range(Cells(5, i), Cells(8, i)).Select
Selection.Copy
Windows("Classeur2.xls").Activate
Range(Cells(1, (i * 5) + 1)).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:úlse

Next i

Le 2ieme Range ne passe pas.
Message d'erreur: La méthode 'Range' de l'objet '_global' a échoué.

Ce que je ne comprends pas c'est que si je mets "A1" .. tout va bien..
PAs d'erreur..
Merci de votre aide
Nathalie