Import de données de diff. classeurs excel
Résolu
dufosse.david
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
dufosse.david Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
dufosse.david Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Import de données de diff. classeurs excel
- Liste déroulante excel - Guide
- Trier des données excel - Guide
- Word et excel gratuit - Guide
- Fiche de pointage excel - Télécharger - Tableur
- Supprimer les données de navigation - Guide
4 réponses
Bonjour,
Pouvez-vous mettre une fiche client (la sructure suffit) sur https://www.cjoint.com/ pour voir se qu'il est possible de faire ?
Comment ces fiches clients sont réparties sur la feuille ....?
Pouvez-vous mettre une fiche client (la sructure suffit) sur https://www.cjoint.com/ pour voir se qu'il est possible de faire ?
Comment ces fiches clients sont réparties sur la feuille ....?
Bonjour et merci pour votre réponse.
La structure de ma macro :
Sub Transfert()
ChDir ThisWorkbook.Path ' Répertoire application
ClassActuel = ThisWorkbook.Name
Range("A2:L1000").ClearContents
Range("b2").Select
nf = Dir("DD*.xls") ' Première fiche
Do While nf <> ""
Workbooks.Open Filename:=nf
[C15:H15].UnMerge 'defusionne
[C16:H16].UnMerge 'defusionne
[C19:H19].UnMerge 'defusionne
[C21:H21].UnMerge 'defusionne
[E43:F43].UnMerge 'defusionne
[E45:F45].UnMerge 'defusionne
[G43:H43].UnMerge 'defusionne
[G45:H45].UnMerge 'defusionne
Range("C15,C16,C19,C21").Copy
Windows(ClassActuel).Activate
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Windows(nf).Activate
Range("E43,E45").Copy
Windows(ClassActuel).Activate
ActiveCell.Offset(0, 4).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Windows(nf).Activate
Range("G43,G45").Copy
Windows(ClassActuel).Activate
ActiveCell.Offset(0, 2).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Workbooks(nf).Close savechanges:=False
ActiveCell.Offset(0, -7) = nf
ActiveCell.Offset(1, -6).Select
nf = Dir() ' Fiche suivante
Loop
End Sub
Après recherches j'ai réussi à établir ceci.
Ce qui me dérange, c'est que je n'arrive à pas faire une sélection comportant des cellules se trouvant dans des colonnes différentes (avec la commande "Range"). Donc dans ma structure, le retour 2 fois à la fiche client ouverte.
Si j'ai besoin besoins d'autres éléments sur ma fiche, je serai obligé de faire autant de retours sur la fiche que d'élément à importer, ce qui risque de rendre assez long le traitement.
Si vous avez une idée je suis preneur.
Merci.
La structure de ma macro :
Sub Transfert()
ChDir ThisWorkbook.Path ' Répertoire application
ClassActuel = ThisWorkbook.Name
Range("A2:L1000").ClearContents
Range("b2").Select
nf = Dir("DD*.xls") ' Première fiche
Do While nf <> ""
Workbooks.Open Filename:=nf
[C15:H15].UnMerge 'defusionne
[C16:H16].UnMerge 'defusionne
[C19:H19].UnMerge 'defusionne
[C21:H21].UnMerge 'defusionne
[E43:F43].UnMerge 'defusionne
[E45:F45].UnMerge 'defusionne
[G43:H43].UnMerge 'defusionne
[G45:H45].UnMerge 'defusionne
Range("C15,C16,C19,C21").Copy
Windows(ClassActuel).Activate
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Windows(nf).Activate
Range("E43,E45").Copy
Windows(ClassActuel).Activate
ActiveCell.Offset(0, 4).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Windows(nf).Activate
Range("G43,G45").Copy
Windows(ClassActuel).Activate
ActiveCell.Offset(0, 2).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Workbooks(nf).Close savechanges:=False
ActiveCell.Offset(0, -7) = nf
ActiveCell.Offset(1, -6).Select
nf = Dir() ' Fiche suivante
Loop
End Sub
Après recherches j'ai réussi à établir ceci.
Ce qui me dérange, c'est que je n'arrive à pas faire une sélection comportant des cellules se trouvant dans des colonnes différentes (avec la commande "Range"). Donc dans ma structure, le retour 2 fois à la fiche client ouverte.
Si j'ai besoin besoins d'autres éléments sur ma fiche, je serai obligé de faire autant de retours sur la fiche que d'élément à importer, ce qui risque de rendre assez long le traitement.
Si vous avez une idée je suis preneur.
Merci.