Code VBA import colonnes

  • Initiateur de la discussion Initiateur de la discussion skin373
  • 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 !

skin373

XLDnaute Nouveau
Bonsoir,

je cherche un code VBA permettant l'import d'une partie de données d'une autre feuille excel.
La base source étant énorme, je cherche à savoir s'il y a un moyen d'importer uniquement une sélection de colonne définis dans la feuille qui reçoit l'import.
Ci joint un fichier.

Merci par avance.
 

Pièces jointes

Re : Code VBA import colonnes

Bonjour skin373,

Tu ne précises pas où sont stockées les données à recopier, ni le nombre de lignes concernées ... Le code ci-dessous, collé dans un module standard permettrait de copier les valeurs des colonnes renseignées, si elles figurent dans une feuille nommée "Source" dans le même classeur. 30 lignes sont recopiées (la hauteur des cellules colorées dans ton exemple).
VB:
Sub test()
Set src = Sheets("Source")
With Sheets("Import")
    src.Cells(1, .[B2]).Resize(30, 1 + .[B3] - .[B2]).Copy .[E1]
End With
End Sub
 
Re : Code VBA import colonnes

Bonsoir Modeste,

merci pour ce code qui correspond à ma demande.
Je débute en VBA et j'en apprend tous les jours avec vous.
J'aimerais savoir s'il était possible de rassembler les 2 codes qui sont dans le fichier en un seul, à savoir

1 - Ouvrir le classeur source qui se trouve dans un autre fichier (macro Importation base)
2 - Importer seulement les colonnes de ce classeur base qui sont renseignés, identifiées dans l'onglet import.

Merci par avance.

Skin 373.
 

Pièces jointes

Re : Code VBA import colonnes

Bonjour skin373, le forum,

Je ne suis pas certain de bien comprendre: au moment où tu importes tes données, j'imagine que tu ne sais pas encore quelles colonnes tu vas extraire? Donc les n° de colonnes ne sont pas encore connus (les anciennes dates ne correspondront plus nécessairement aux dates qui t'intéressent 😕) ... alors comment les deux parties de code pourraient-elles s'exécuter "en même temps"?

D'autre part, si tu cherches les 6 colonnes (correspondant à la semaine en cours ou une semaine au choix, dimanche exclu), il n'est absolument pas nécessaire de passer par une macro: si tu importes les données dans la feuille "Base", de simples formules devraient faire l'affaire en feuille Import!?
 
Re : Code VBA import colonnes

Bonjour Modeste et le Forum,

désolé de ne pas avoir répondu de suite, mais comme tous le monde j'étais charlie ces derniers jours.
J'éclaircie ma demande qui a été en partie comprise par modeste.
En effet, ma base est un planning qui couvre 2 années et qui se trouve dans un fichier partagé parmi d'autres onglets.
Le fichier est extrêmement lourd (lenteur à l'ouverture etc..).
Je pensais donc passer par une macro import afin de pouvoir importer uniquement les données qui concernent la semaine souhaitée début et fin de semaine identifiées par les n° de colonnes en cellules B2 et B3.
Mais s'il y a un autre moyen, je suis preneur.

Merki.
 
Re : Code VBA import colonnes

Bonsoir Modeste,

merci pour la réponse... J'avais déjà pensé à utiliser la formule index - equiv.
Mais le pb, c'est que par ce biais toute modification du fichier de base sera actualisée, alors qu'il me faut extraire les données à un instant T.
Cette variable n'était pas précisée lors des messages précédents.
L'idéal serait d'extraire les données à instant T pour une période précise !!

Merci tout de même pour tes réponses qui vont m'aider à avancer.
 
Re : Code VBA import colonnes

Bonjour,

Une proposition par macro, donc: la copie se déclenche lors du changement de valeur dans la cellule rouge. Le code est donc à trouver dans la fenêtre de code de la feuille "Import".

J'ai prévu un ou deux tests, mais il y en aura peut-être à ajouter?

J'ai continué sur l'idée de 6 colonnes recopiées (mais le départ sera-t-il toujours un lundi??) et de 30 lignes ... jette un oeil, teste et dis-nous!
 

Pièces jointes

Re : Code VBA import colonnes

Bonsoir Modeste,

je viens de lancer plusieurs tests et c'est parfait 😉....Exactement ce que je voulais.
Pour info, l'extraction se fait bien sur 6 jours et donc par défaut avec un départ le lundi.

Encore Merci et à bientôt sur le forum.
 
- 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

Discussions similaires

Réponses
40
Affichages
3 K
Réponses
15
Affichages
566
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
432
Retour