Macro copier-coller excel
Résolu/Fermé
A voir également:
- Macro copier-coller excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Copier coller pdf - Guide
- Si et excel - Guide
- Symbole clavier copier coller - Guide
3 réponses
Mike-31
Messages postés
18345
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
8 novembre 2024
5 104
Modifié par Mike-31 le 7/06/2010 à 20:37
Modifié par Mike-31 le 7/06/2010 à 20:37
Salut,
Sur quelle version excel !
tu parles bien de classeur différent, pas de feuille différente dans le même classeur.
s'il s'agit d'un autre classeur, est il dans le même répertoire !
Ensuite ce que tu demandes est faisable, la première question est une transposition et pour la deuxième un collage à la suite qui ne pose pas de problème
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Sur quelle version excel !
tu parles bien de classeur différent, pas de feuille différente dans le même classeur.
s'il s'agit d'un autre classeur, est il dans le même répertoire !
Ensuite ce que tu demandes est faisable, la première question est une transposition et pour la deuxième un collage à la suite qui ne pose pas de problème
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Mike-31
Messages postés
18345
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
8 novembre 2024
5 104
Modifié par Mike-31 le 7/06/2010 à 21:43
Modifié par Mike-31 le 7/06/2010 à 21:43
Re,
Un répertoire est un dossier en fait les deux classeurs se trouvent t'il au même niveau, c'est important pour le code.
la transposition est un collage spécial ou il faut cocher transposer c'est tout. les données en ligne sont copiées en colonne et inversement, mais dans ton cas avec un code VBA.
Pour faire simple, si les deux classeurs sont ouverts
Sub Macro3()
Range("A2:D2").Select
Selection.Copy
Windows("Nom du fichier.xls").Activate
'Soit tu identifies la feuille de réception
Sheets("Feuil1").Select
'soit tu donne sont numéro mais il faut supprimer une
'de ces deux lignes en gras
Sheets(1).Select
Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
End Sub
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Un répertoire est un dossier en fait les deux classeurs se trouvent t'il au même niveau, c'est important pour le code.
la transposition est un collage spécial ou il faut cocher transposer c'est tout. les données en ligne sont copiées en colonne et inversement, mais dans ton cas avec un code VBA.
Pour faire simple, si les deux classeurs sont ouverts
Sub Macro3()
Range("A2:D2").Select
Selection.Copy
Windows("Nom du fichier.xls").Activate
'Soit tu identifies la feuille de réception
Sheets("Feuil1").Select
'soit tu donne sont numéro mais il faut supprimer une
'de ces deux lignes en gras
Sheets(1).Select
Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
End Sub
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Mike-31
Messages postés
18345
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
8 novembre 2024
5 104
7 juin 2010 à 21:45
7 juin 2010 à 21:45
j'ai complété mon post précédent.
Si le classeur de réception est fermé, c'est plus complexe mais pas insurmontable parce qu'il faut donner le chemin d'accès
Si le classeur de réception est fermé, c'est plus complexe mais pas insurmontable parce qu'il faut donner le chemin d'accès
Mike-31
Messages postés
18345
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
8 novembre 2024
5 104
Modifié par Mike-31 le 7/06/2010 à 23:26
Modifié par Mike-31 le 7/06/2010 à 23:26
Re,
Colle ce code dans un module et remplace toto en gras par le nom de ton fichier de réception sans mettre l'extension ou efface &".xls"
les données seront transposé sur la feuille1
si tu as plusieurs lignes à transposer, il faudra ajouter une boucle dans le code
Sub Macro3()
Dim nom As String
Application.ScreenUpdating = False
Range("A2:D2").Copy
nom = "toto" & ".xls"
On Error Resume Next
Workbooks(nom).Activate
If Err <> 0 Then
On Error Resume Next
Workbooks.Open (ThisWorkbook.Path & "\" & nom)
End If
Sheets("Feuil1").Select
Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Colle ce code dans un module et remplace toto en gras par le nom de ton fichier de réception sans mettre l'extension ou efface &".xls"
les données seront transposé sur la feuille1
si tu as plusieurs lignes à transposer, il faudra ajouter une boucle dans le code
Sub Macro3()
Dim nom As String
Application.ScreenUpdating = False
Range("A2:D2").Copy
nom = "toto" & ".xls"
On Error Resume Next
Workbooks(nom).Activate
If Err <> 0 Then
On Error Resume Next
Workbooks.Open (ThisWorkbook.Path & "\" & nom)
End If
Sheets("Feuil1").Select
Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
7 juin 2010 à 20:50
j'ai la version 2003 d'Excel, et oui il s'agit bien d'un classeur différent et non d'une feuille.
Qu'est-ce-que tu appelles "répertoire"?
Et comment fais-tu pour faire une "transposition" et un "collage"? Peux-tu me donner la réponse avec mes données que j'ai écrites dans la question??
Merci en attendant =)