Copier colonne vers autre fichier + receherche contenu cellule

Fermé
VBAlex Messages postés 3 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 21 août 2020 - 21 août 2020 à 10:45
yg_be Messages postés 23336 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 novembre 2024 - 21 août 2020 à 13:50
Bonjour,

Dans le cadre de mon travail, je suis amené à développé un petit code VBA mais je suis encore novice. Les images illustrent ce que je souhaite obtenir.

Je souhaite écrire un code VBA me permettant de copier les colonnes d'un fichier source vers un fichier destination selon le titre de la première case de chaque colonne.
Dans mon exemple, le contenu de la colonne Col1 va sous le contenu existant de la colonne Colonne1 du fichier destination et ainsi de suite. Les colonnes ne sont poas forcément rangées dans le même ordre. Je ne m'en sors pas avec les fonction Copy-Paste... ni avec les fichiers différents.

Je souhaiterai également pouvoir ajoutée dans la colonne Code du fichier destination un texte (éventuellement rentré à la main dans une txtbox). Dans l'exemple, j'inscris Après dans cette colonne.

Dernier point, je souhaiterai pouvoir renseigner une colonne (Type) en fonction du contenu partiel de la colonne du fichier source. Je ne peux pas utiliser la fonction .cellsSearch car je ne peux pas installer le pack XLP dans mon entreprise.
Dans mon exemple : Si dans colonne Condition type K… Alors Type = Toto dans fichier destination, Si X alors Tata et si Y alors Tutu.



Merci d'avance pour votre aide !
A voir également:

1 réponse

yg_be Messages postés 23336 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 novembre 2024 Ambassadeur 1 551
21 août 2020 à 11:06
bonjour,
il n'est pas utile de faire du copier/coller. Voici un exemple de code:
Private Sub cpf()
Dim fsource As Worksheet, fdest As Worksheet
Dim cdest As Workbook
Set cdest = Workbooks.Open(ThisWorkbook.Path + "\book2.xlsx")
Set fsource = ThisWorkbook.Sheets("Feuille1")
Set fdest = cdest.Sheets("Feuille2")
fdest.[A2] = fsource.[B3]
cdest.Save
cdest.Close
End Sub
0
VBAlex Messages postés 3 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 21 août 2020
21 août 2020 à 12:04
Bonjour yg_be,

Je vois l'idée, mais je me rend compte que je n'étais peut etre pas assez clair. Le fichier de destination doit etre incrémental, et je souhaite donc pouvoir y ajouter des lignes au fur et à mesure à partir d'un fichier source qui sera renouvelé régulièrement.
0
yg_be Messages postés 23336 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 novembre 2024 1 551 > VBAlex Messages postés 3 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 21 août 2020
21 août 2020 à 13:50
j'avais compris, il faut bien entendu compléter le code pour obtenir ce que tu souhaites.
c'est en travaillant que tu ne resteras pas novice.
0