Importer data depuis un fichier fermé

Faral

XLDnaute Nouveau
Bonsoir à tous,
je cherche une macro qui permet d'importer les données de la colonne E à partir de E3 du classeur soft vers la colonne E à partir de E3 du classeur Faral, sans toucher la mise en forme

merci pour votre assistance
 

Pièces jointes

  • FARAL.xlsx
    14.2 KB · Affichages: 28
  • SOFT.xlsx
    14.1 KB · Affichages: 19

zebanx

XLDnaute Accro
Bonjour Job75, Bonjour Faral

Ci-joint un zip avec un exemple d'importation qui devrait vous aider :
- 1 base export (feuille data)
- 1 fichier à choisir pour l'import

Et les données de la colonne depuis E3 vont s'enregistrer sur la feuille 3 du feeder à partir de E3 en copie-valeur, sans toucher à la MEF.
Le fichier d'import est refermé après exécution de la macro.

Cdlt
thierry

@job75 : journée orange ça devrait aller;)
 

Pièces jointes

  • importer données.zip
    20.9 KB · Affichages: 36

zebanx

XLDnaute Accro
Bonjour Faral,

Quelques modifications (pour copier vraiment toute la liste de E3 à la dernière ligne de "PFE" vers "Data")
J'ai mis exprès en jaune pour constater que c'est bien un copie valeur.

Cdlt
thierry
 

Pièces jointes

  • faral.zip
    31.7 KB · Affichages: 30

Faral

XLDnaute Nouveau
Cher zebanx,

je te remercie pour la réponse mais c'est un peu compliqué pour moi,
quand je clique sur le code il me demande de choisir l'emplacement de la base de données, ce serait mieux de le modifier pour qu'il s’exécute sans choisir l'emplacement
tu trouves pas ?
 

zebanx

XLDnaute Accro
Bonsoir,

L'avantage avec le GETOPENFILENAME est que tu n'as pas à lui indiquer le chemin complet de ton fichier récepteur.
Un deuxième code ici avec les deux fichiers ouverts (exporter 2).
Sinon, il faudra que tu utilises les chemins complets* des fichiers pour que la macro aille les trouver.

Cdlt,
thierry

*exemple : C:\Users\thierry\Desktop\SOFT.xls

edit : message posté en même temps que JOB75 (dont les formules sont plus directes ^^)
 

Pièces jointes

  • SOFT.xls
    54 KB · Affichages: 16
Dernière édition:

job75

XLDnaute Barbatruc
Re,

Si l'on ne veut pas encombrer le fichier avec des valeurs zéro inutiles on utilisera :
Code:
Private Sub Workbook_Activate()
With Feuil01.[E3:E1000]
  .FormulaArray = "='" & ThisWorkbook.Path & "\[SOFT.xlsx]PFE'!E3:E1000"
  .Value = .Value 'supprime la formule
  .Replace 0, "", xlWhole 'efface les valeurs zéro
  With .Parent.UsedRange: End With 'actualise la barre de défilement verticale
End With
End Sub
Fichier (2).

A+
 

Pièces jointes

  • Liaisons avec VBA(2).xlsm
    24.8 KB · Affichages: 19

Faral

XLDnaute Nouveau
Bonjour Job75
je n'arrive pas à executer le code, j'ai essayé de le lier au bouton mais ça marche pas je ne sais pas pourquoi...
puis supposant que j'ai plus 1000 données dans la base de donnée le code ne va pas l'importer puisque vous mettez dans le code E3:E1000
 

Pièces jointes

  • Liaisons avec VBA(2).xlsm
    21.5 KB · Affichages: 20

job75

XLDnaute Barbatruc
Bonjour Faral, le forum,

Bah pas besoin de bouton, si mon code est bien placé dans ThisWorkbook il s'exécute automatiquement quand on ouvre ou active le classeur.

Et c'est à vous de savoir (à peu près) le nombre maximum de lignes que peut contenir le tableau source.

Donc si la plage E3:E1000 est insuffisante augmentez-la, par exemple en mettant E3:E10000.

A+
 

zebanx

XLDnaute Accro
Bonjour Faral, bonjour Job75

Faire attention au nom aussi du fichier ou de la feuille, à l'emplacement (feuille1), et à l'extension (xls *ou xlsm). Mais le code fonctionne bien (sûr)!.

Bonne journée
thierry

* ayant excel 2003, mes deux fichiers sont avec extension .xls.
 
Dernière édition:

Discussions similaires

Réponses
8
Affichages
403

Statistiques des forums

Discussions
312 339
Messages
2 087 407
Membres
103 538
dernier inscrit
Mbolatiana Hyacinthe