• Initiateur de la discussion Initiateur de la discussion emmanuel75
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

emmanuel75

Guest
Bonsoir à tous,

Je dispose d'une boucle qui est la suivante :
For i = 1 To 10
Worbooks("fichier1.xls").Activate
value = Worksheets("Feuil1").Range("G" & i).value
Worbooks("fichier2.xls").Activate
Range("G" & i) = value
next

Celle-ci me permet de copier des cellules verticalement du fichier 1 vers le fichier 2, mais comment pourrais je faire de même mais horizontalement ?

Merci pour toute aide éventuelle...

Emmanuel
 
Re : RANGE("G" & i).....

Bonsoir


A adapter à ton cas


Sub test()
For i = 1 To 10
zValue = Worksheets(1).Range("G" & i).Value
Worksheets(2).Activate
Cells(1, i) = zValue
Next
End Sub


Ce qui devrait donner
Code:
Sub test_2()
Dim i as Integer
For i = 1 To 10
Workbook("fichier1.xls").Activate
value = Worksheets("Feuil1").Range("G" & i).value
Workbook("fichier2.xls").Activate
Cells(1,i) = value 'recopie en ligne 1
Next
End sub
 
Dernière édition:
Re : RANGE("G" & i).....

Merci Staple 1600,

Les cellules se copient bien de manière horizontale ! Bravo !
Mais comment faire quand les cellules à copier (fichier 1) sont elles aussi horizontales ?
Les deux fichiers sont en pièce jointe...si quelqu'un veut bien encore me dépanner, merci d'avance,

Emmanuel
 

Pièces jointes

Re : RANGE("G" & i).....

Je tiens à réaliser cette macro car elle me permet de copier les cellules sans
faire apparaître les formules et les liens qu'elles contiennent...il s'agit juste de
copier "leur valeur affichée"

Manu
 
Re : RANGE("G" & i).....

Re


Syntaxe à adapter à ton cas
Code:
Sub test()
'copie tout
Fin_Colonne = Cells(2, 256).End(xlToLeft).Column
Sheets(1).Range(Cells(2, 2), Cells(2, Fin_Colonne)).Copy Sheets(2).Range("A1")
End Sub
Sub testII()
'ne copie que les valeurs
Dim Fin_Colonne As Long
Fin_Colonne = Cells(2, 256).End(xlToLeft).Column
Sheets(1).Range(Cells(2, 2), Cells(2, Fin_Colonne)).Copy
Sheets(2).Range("A1").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
Application.CutCopyMode = False
End Sub
 
Re : RANGE("G" & i).....

Un grand merci à toi Staple1600, ta macro marche très bien !

J'ai une petite question : la valeur "false" dans les lignes
"Sheets(2).Range("A1").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False"....sont elles importantes ou "true" aurait fait l'affaire ?

Je suis un peu novice je dois dire...

En tout cas merci encore

Manu
 
Re : RANGE("G" & i).....

Re

Pour te faire plaisir
Code:
Sub testIII()
Dim Fin_Colonne As Long
Fin_Colonne = Cells(2, 256).End(xlToLeft).Column
Sheets(1).Range(Cells(2, 2), Cells(2, Fin_Colonne)).Copy
Sheets(2).Range("A1").PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
End Sub

Avec cette macro, tu devaris voir la différence
Sub testIV()
Dim Fin_Colonne As Long
Fin_Colonne = Cells(2, 256).End(xlToLeft).Column
Sheets(1).Range(Cells(2, 2), Cells(2, Fin_Colonne)).Copy
Sheets(2).Range("A1").PasteSpecial Paste:=xlValues
End Sub

et le pourquoi de: Application.CutCopyMode = False
 
Re : RANGE("G" & i).....

Re

Une autre façon de faire
Code:
Sub testV()
Dim Fin_Colonne As Long
Fin_Colonne = Sheets(1).Cells(2, 256).End(xlToLeft).Column
Sheets(2).Cells(1, 1).Resize(1, Fin_Colonne).Value = _
Sheets(1).Range(Cells(2, 2), Cells(2, Fin_Colonne)).Value
End Sub

Pour l'explication:
Ce lien n'existe plus
Que signifie application.cutcopymode=false et à quoi ça sert ?
En VBA, Application.CutCopyMode=xlCopy équivaut à Ctrl+C et
Application.CutCopyMode=xlCut à Ctrl+X.
La cellule sélectionnée s'entoure de petits pointillés dans Excel.

Application.CutCopyMode=False ou Application.CutCopyMode=True équivaut à
l'appui sur la touche Echap (annulation du mode Copier ou Coller, disparition des pointillés).
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
909
Réponses
9
Affichages
884
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
903
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
452
Réponses
2
Affichages
769
Retour