Copier Données d'un fichier Excel dans un autre [Résolu]

aurelien2723 181 Messages postés jeudi 12 janvier 2006Date d'inscription 26 janvier 2011 Dernière intervention - 5 avril 2006 à 16:26 - Dernière réponse : MAXIMO71 46 Messages postés samedi 25 mars 2006Date d'inscription 7 juin 2007 Dernière intervention
- 7 avril 2006 à 12:34
Salut!

Je dois copier des données d'un fichier texte ouvert avec Excel vers un autre fichier.

Pas de problème pour ouvrir les deux fichiers. J'ai donc Excel ouvert deux fois.
Le soucis est lorsque je veux copier la cellule d'un fichier dans l'autre fichier...
Voici ma ligne de commande permettant de faire ceci : (J'ai l'erreur sur cette ligne)

wsExcel.Cells(249, j + 2).Value = wsExcel2.Cells(j - 1, 1).Value

sachant que wsExcel est le premier fichier, le soucis vient du deuxième, voici leur
déclarations:

'Le permier :
Set appExcel = CreateObject("Excel.Application")
'Ouverture d'un fichier Excel
Workbooks.OpenText FileName:=LireINI("G150", "PathRecette"), Origin:=xlWindows, _
StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlNone, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True

Set wbExcel = appExcel.ActiveWorkbook
Set wsExcel = wbExcel.ActiveSheet

'Le deuxième:
appExcel.Workbooks.OpenText FileName:=LireINI("G150", "PathOF") + listFichiers(i), Origin:=xlWindows, _
StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlNone, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
Set wbExcel2 = appExcel.ActiveWorkbook
Set wsExcel2 = wbExcel2.ActiveSheet

Le débuggeur me dit Erreur défini par l'objet ou parl'application ...

Aidez moi svp :)

merci
Afficher la suite 

4 réponses

Meilleure réponse
aurelien2723 181 Messages postés jeudi 12 janvier 2006Date d'inscription 26 janvier 2011 Dernière intervention - 6 avril 2006 à 11:19
3
Merci
salut!

Bon j'ai trouvé mon soucis... je crois que ca venait tout simplement du fait que j vallait 1 le premier tour, donc j-1 0 ... BUG ...

JE suis dégouté :(

mais bon, ca marche! :)

Merci aurelien2723 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 74 internautes ce mois-ci

MAXIMO71 46 Messages postés samedi 25 mars 2006Date d'inscription 7 juin 2007 Dernière intervention - 5 avril 2006 à 19:01
0
Merci
Bonjour, je te propose le code suivant, il fonctionne depuis excel, je ne sais pas si c'est ce que tu cherches car tes

multiple set me font penser que tu as besoin de plusiers fenêtre excel,
si c'est le cas je ne pense pas pouvoir t'aider, sinon je penses que tu

peux facilement adapter ce code pour ouvrir deux session d'excel, penses simplement à activer la bonne fenêtre

avec



'Windows("MaFenetre_aActiver").Activate ou Select





Sub Ouvre_Fichier_XLS_et_TXT()

'

' Je pense être conforme à ton cahier des charges



'

'Changement du répertoire par défaut ça ne sert pas à grand chose mais bon

ChDir "MyPath"



'Ouverture du fichier xls MonFichierXls

Workbooks.Open Filename:= _

"MyPath\MonFichier.xls"



'Ouverture du fichier txt MonFichierTXT

Workbooks.OpenText Filename:= _

"UnAutrePath\MonFichierTXT.txt", Origin:=xlWindows _

, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _

ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False _

, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), _

Array(3, 1), Array(4, 1), Array(5, 1)), TrailingMinusNumbers:=True







Workbooks("MonFichier.xls").Worksheets(1).Cells(249, j + 2).Value =
Workbooks("MonFichierTXT.txt").Worksheets(1).Cells(j - 1, 1).Value



End Sub


Voila chez moi cela fonctionne bien, si tu as besoin de précision
laise un msg sur ce forum, même pour dire OK et si c'est bon penses à
valider

Bonne soirée


MAXIMO71
PS Si la réponse vous satistait
pensez à la valider
aurelien2723 181 Messages postés jeudi 12 janvier 2006Date d'inscription 26 janvier 2011 Dernière intervention - 6 avril 2006 à 08:53
0
Merci
j'ai testé avec cette ligne :

Workbooks("G150.txt").Worksheet(1).Cells(249, j + 2).Value = Workbooks(listFichiers(i)).Worksheet(1).Cells(j - 1, 1).Value

mais toujours rien....
MAXIMO71 46 Messages postés samedi 25 mars 2006Date d'inscription 7 juin 2007 Dernière intervention - 7 avril 2006 à 12:34
0
Merci
Je suis content que ton code fonctionne

MAXIMO71
PS Si la réponse vous satistait
pensez à la valider

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.