Transfert d'info d'un fichier Excel vers un autre via VB

Monastre Messages postés 3 Date d'inscription mercredi 9 février 2005 Statut Membre Dernière intervention 3 juillet 2005 - 30 juin 2005 à 21:52
Monastre Messages postés 3 Date d'inscription mercredi 9 février 2005 Statut Membre Dernière intervention 3 juillet 2005 - 3 juil. 2005 à 23:12
Bonjour,

je voudrais savoir s'il est possible de récupérer une ligne d'un fichier Excel et de la copier vers un autre fichier Excel, et si oui comment fait-on car moi j'y arrive pas.

Et aussi savoir où peut-on trouver une doc avec une liste des variables et leur fonction car j'en trouve pas et sans ça j'ai du mal à faire grand chose.

Merci.
Cordialement.

5 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
30 juin 2005 à 23:02
Voila le bout de code qui fait un copier coller

quelque bout de code



apres il reste plus qu'a joué avec les classeurs et les feuilles pour faire le boulot



Public Sub test()





Rows("1:4").Select

Application.CutCopyMode = False

Selection.Copy

Rows("10:10").Select

Selection.Insert Shift:=xlDown







Range("C:C,D:E,G:H").Select

Dim v As Range

Set v = Range("1:4")

v.Copy





Dim v2 As Range

Set v2 = Range("10:14")

v2.PasteSpecial (xlPasteValues)



End Sub
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
1 juil. 2005 à 00:34
Alors déjà : Avec quelle version de Excel codes-tu ???



Pour ton 1er problème, sache qu'il y a encore bien d'autres réponses possibles (autres que celle de Nhervagault !).



Pour répondre à ton 2ème problème, sache que les variables, y'a pas de
doc pour la simple et bonne raison que c'est toi qui les crées!!! En
revanche, y'a bien des "Propriétés", des "Evénements" [procédures
événementielles], des "Méthodes" et des "Constantes VB" que tu
trouveras, tout simplement, en lançant l'aide (en appuyant sur la
touche "F1"). Bref, si ton install de Office (ou du logiciel en cause)
a été bien faite, tu devrais avoir l'aide. Sinon, complète
l'installation (en relançant l'install qui te demandera ce que tu veux
faire entre désastaller tout et installer/désinstaller un composant.).




Enjoy

<hr size="2" width="100%">
(Si une réponse vous convient, cliquez sur son bouton "Accepter")
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
1 juil. 2005 à 00:50
Lut,
Sous VBA voilà ......

Dim MyRange As Range, MyRange1 As Range


' On Affecte les plages des deux classeurs


Set MyRange = Workbooks( "Classeur1" ).Worksheets( "feuil1" ).Rows( 1 )


Set MyRange1 = Workbooks( "Classeur2" ).Worksheets( "feuil1" ).Rows( 1 )


' Et ensuite les valeurs


MyRange1.Value = MyRange.Value

Sous VB c'est pareil mais tu dois d'abord déclarer ton application ton classeur et ta feuille.
En ce qui concerne les fonction tu as une liste dans le dossier
C:\Program Files\Microsoft Office\OFFICE11\1036\VBAList.xls
Un petit tour dans l'aide te donneras exemples, et autre chose bien utiles

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
1 juil. 2005 à 01:06
Hum sous vb ce sera dans le style

Dim objExcelApp
As Object


Dim
objWorkSheet As Object


' On ouvre Excel


Set
objExcelApp = CreateObject ( "Excel.Application" )


' Un classeur et une feuille


objExcelApp.Workbooks.Open (
"c:\Mon classeur.xls" )


'utilise la propriété .Add si le classeur existe déja


Set
objWorkSheet = objExcelApp.ActiveSheet


' ici on rentre les données


objWorkSheet.Cells(
1 , 1 ).Value =
"Mes données"




Set
MyRange = objExcelApp.Workbooks( "Classeur1" ).Worksheets( "feuil1" ).Rows( 1 )


Set
MyRange1 = objExcelApp.Workbooks( "Classeur2" ).Worksheets( "feuil1" ).Rows( 1 )


' Et ensuite les valeurs




MyRange1.Value = MyRange.Value








' etc......


objExcelApp.Save (
"C:\Mon Classeur.xls" )




objExcelApp.ActiveWorkbook.Close


objExcelApp.Quit


' on libère la mémoire


objExcelApp =
Nothing


objWorkSheet =
Nothing

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Monastre Messages postés 3 Date d'inscription mercredi 9 février 2005 Statut Membre Dernière intervention 3 juillet 2005
3 juil. 2005 à 23:12
Merci d'avoir répondu

Par contre j'ai pas encore essayé, je le ferais demain
je vous tiendrez au courant

Et j'ai réinstaller l'aide, comme ça c vrai que ca va mieux pour faire le code

Cordialement.
0
Rejoignez-nous