Bonjour Kévin, merci pour cette macro, qui fonctionne à merveille, je l'ai adapté et adopté, mais j'ai une question lors du coller je souhaiterai garder le format des cellules que je copie, elles ont des lignes de couleurs ainsi que des cellules avec un fond de couleurs, cela fait 2 jours que j'essaie de modifier la macro mais je ne comprends pas ou je dois modifier, je comprends pas totalement le "copier coller" 'copier coller les données colonnes A et B With ws_destination .Cells(k, 1) = ws_origine.Cells(i, 1) .Cells(k, 2) = ws_origine.Cells(i, 2) merci de ton aide Laurent
ปีที่แล้ว
Bonjour ! Dans les faits, avec cette macro, le copier-coller est en réalité une assimilation des valeurs d'une cellule à une autre. Du coup, on ne transfère que la valeur de la cellule. Pour garder le même format, 2 choix, soit on change la manière de faire ici et on remplace du With au End With par un copier-coller pur et dur tel que ws.Range("A2:Z2").Copy ws2.Cells(k,1). Cela signifierai que l'on copie colle toujours les mêmes colonnes continues (ce qui est souvent le cas). Soit, on peut aussi "lire" le format de la cellule que l'on veut copier-coller et l'appliquer à la nouvelle. Par exemple ajouter sur une nouvelle ligne : .Cells(k,1).Interior.ColorIndex = ws_origine.cells(i,1).interior.colorindex
Bonjour, après moulte essais, je suis arrivée à intégrer la 2eme condition, mais je ne garde pas le format des écriture dans les cellules (il peut y avoir plusieurs couleurs pour le suivi dans la même cellule, ou je change pour avoir la couleur de police mais je n'arrive pas à reproduire le vrai copier-coller, et je perd tous les fonds de cellules. Mais je n'arrive pas à intégrer le "simple copier coller" "ws.Range("A2:Z2").Copy ws2.Cells(k,1)"@
Bonjour, J’ai un fichier Excel avec deux feuilles la première avec des matricules dans la colonne A qui correspond à un poids dans la colonne B, la deuxième feuille avec elle aussi les mêmes colonnes mais avec la colonne « poids » vide. Ce que je voudrais c’est de rechercher les mêmes matricules pour copier la valeur « poids » sur la deuxième feuille. Merci.
ปีที่แล้ว
Bonjour, la formule RECHERCHEV est exactement ce dont vous avez besoin, sans même avoir besoin d'une macro. Si toutefois vous voulez le faire avec une macro, une manière simple quand on démarre c'est de faire une boucle sur la première feuille (cad toutes les lignes une par une), et de faire une boucle sur toutes les lignes de la feuille 2 à chaque fois. Cela sera plutôt long comme exécution du code mais plus simple à écrire au début.
Bonjour svp, vous avez un code pour copie les données d'un seul colonne d'une feuille 4 à feuille 5 ? Merci bcp
2 ปีที่แล้ว
Bonjour, pour copier coller une colonne entière, par exemple la colonne B de ma feuille 1 et la coller sur la cellule A1 de la feuille 2, on peut utiliser la ligne suivante : ws_feuil1.Cells(1, 2).EntireColumn.Copy ws_feuil2.Cells(1, 1)
Bonjour, c'est intéressant perso j'aurais aimé que titre parle de Vba car je ne m'attendais pas à son utilisation. Ce qui est pour moi une bonne chose, je débute sur excel.
Bonjour, Je n'y connais vraiment pas grand chose en macros... J'ai tenté d'appliquer votre méthode à un de mes fichiers et j'ai un message de ce type : "Propriété ou méthode non gérée par cet objet" ? Avez-vous une idée de l'origine de ce type d'erreur ? Merci ! Guillaume
ปีที่แล้ว
Bonjour, si vous pouvez identifier la ligne du code qui est en surbrillance quand vous choisissez Débogage au moment de l'erreur, cela me donnera une meilleure idée du problème et éventuellement une solution.
Bonjour, s'il te plait je suis débutante aussi et je suis bloquée sur un problème pareil mais j'ai pas su adapter à mon cas. En gros j'aimerai créer une macro qui reproduit le travail de la fonction rechercheV d'excel mais qui doit s'exécuter automatiquement lorsque j'appelle la macro sur la feuille 5 . Sur la feuille 5 j'ai une colonne avec des noms de pièces, la 2ème contient les quantités de chaque pièce et la 4ème doit contenir le cout de la pièce en question * la quantité. Les coûts se trouvent dans la 3ème feuille du même classeur donc Le code que j'ai proposé est le suivant: Function RechercheV_Coût(valeur_cherchée As Variant, Table_Coût As Range, No_index_col As Single, optional_value As Boolean) On Error GoTo RechercheV_Coûterror RechercheV_Coût = Application.VLookup(valeur_cherchée, Table_Coût, No_index_col, optional_value) If IsError(RechercheV_Coût) Then RechercheV_Coût = "#N/A" Exit Function RechercheV_Coûterror: RechercheV_Coût = "#N/A" End Function Sub Coût_PLD() Dim ma_valeur As Variant Dim ma_plage As Range Dim ma_colonne As Single Dim L As Integer Dim valeur_proche As Boolean ma_valeur = "Feuil3.cells(L,2)" Set ma_plage = workbook.sheets("feuil3").Range("A:B") ma_colonne = 2 valeut_proche = False Feuil5.Cells(L, 4).Value = RechercheV_Coût(ma_valeur, ma_plage, ma - colonne, valeur_proche).Value*Feuil5.cells5(L,2).value L= L+1 End Sub On m'indique qu'il y'a une erreur au niveau de la ligne "Set ma_plage = workbook.sheets("feuil3").Range("A:B")" sauf que je n'arrive pas à la résoudre. Merci d'avance
2 ปีที่แล้ว
Bonjour, Je vois que le fichier n'est pas définit, donc il faut soit écrire ActiveWorkbook.Sheets("Feuil3").... ou enlever la mention workbook. A voir si ça règle le problème déjà. :)
Bonjour Kevin, superbe vidéo, merci beaucoup ! Je suis un grand débutant avec VBA et vos vidéos sont de très bons guides ! :) J'ai cependant une question, je dois copier plusieurs données d'un fichier excel à un autre, je pense avoir réussi à adapter votre code en commentaire à ma situation, la macro se lance sans erreur affichée et pourtant rien ne se passe, pensez vous que le fait que mes données soient sous forme de tableau peut bloquer ? Merci par avance pour votre réponse et encore merci pour vos vidéos !
ปีที่แล้ว
Bonjour, normalement ça ne devrait pas avoir d'impact. Dans le doute, on peut utiliser un .Value si on fait une correspondance entre cellules. Généralement, un problème comme ça est plus facilement lié à un problème dans la succession des étapes, par exemple ça ne colle pas la bonne chose, ou un problème dans l'adaptation du code, par exemple le code ne regarde pas dans la bonne colonne pour la correspondance.
Bonjour Kévin. Vraiment merci !!. Vous me sauvez la vie. J'ai utilisé cette macro pour copier / coller des données sur un fichier de 11 000 lignes.
Bonjour Kévin, merci pour cette macro, qui fonctionne à merveille, je l'ai adapté et adopté, mais j'ai une question lors du coller je souhaiterai garder le format des cellules que je copie, elles ont des lignes de couleurs ainsi que des cellules avec un fond de couleurs, cela fait 2 jours que j'essaie de modifier la macro mais je ne comprends pas ou je dois modifier, je comprends pas totalement le "copier coller"
'copier coller les données colonnes A et B
With ws_destination
.Cells(k, 1) = ws_origine.Cells(i, 1)
.Cells(k, 2) = ws_origine.Cells(i, 2)
merci de ton aide
Laurent
Bonjour ! Dans les faits, avec cette macro, le copier-coller est en réalité une assimilation des valeurs d'une cellule à une autre. Du coup, on ne transfère que la valeur de la cellule.
Pour garder le même format, 2 choix, soit on change la manière de faire ici et on remplace du With au End With par un copier-coller pur et dur tel que ws.Range("A2:Z2").Copy ws2.Cells(k,1). Cela signifierai que l'on copie colle toujours les mêmes colonnes continues (ce qui est souvent le cas). Soit, on peut aussi "lire" le format de la cellule que l'on veut copier-coller et l'appliquer à la nouvelle. Par exemple ajouter sur une nouvelle ligne : .Cells(k,1).Interior.ColorIndex = ws_origine.cells(i,1).interior.colorindex
bonjour,
Merci pour ta réponse, je vais tester sur ton fichier et le mettre (enfin essayer) sur le mien, je te tiens au courant 🙂@
Bonjour, après moulte essais, je suis arrivée à intégrer la 2eme condition, mais je ne garde pas le format des écriture dans les cellules (il peut y avoir plusieurs couleurs pour le suivi dans la même cellule, ou je change pour avoir la couleur de police mais je n'arrive pas à reproduire le vrai copier-coller, et je perd tous les fonds de cellules.
Mais je n'arrive pas à intégrer le "simple copier coller" "ws.Range("A2:Z2").Copy ws2.Cells(k,1)"@
Bonjour,
J’ai un fichier Excel avec deux feuilles la première avec des matricules dans la colonne A qui correspond à un poids dans la colonne B, la deuxième feuille avec elle aussi les mêmes colonnes mais avec la colonne « poids » vide.
Ce que je voudrais c’est de rechercher les mêmes matricules pour copier la valeur « poids » sur la deuxième feuille.
Merci.
Bonjour, la formule RECHERCHEV est exactement ce dont vous avez besoin, sans même avoir besoin d'une macro.
Si toutefois vous voulez le faire avec une macro, une manière simple quand on démarre c'est de faire une boucle sur la première feuille (cad toutes les lignes une par une), et de faire une boucle sur toutes les lignes de la feuille 2 à chaque fois. Cela sera plutôt long comme exécution du code mais plus simple à écrire au début.
@ un grand merci pour vous
Bonjour
svp, vous avez un code pour copie les données d'un seul colonne d'une feuille 4 à feuille 5 ?
Merci bcp
Bonjour, pour copier coller une colonne entière, par exemple la colonne B de ma feuille 1 et la coller sur la cellule A1 de la feuille 2, on peut utiliser la ligne suivante : ws_feuil1.Cells(1, 2).EntireColumn.Copy ws_feuil2.Cells(1, 1)
Bonjour, c'est intéressant perso j'aurais aimé que titre parle de Vba car je ne m'attendais pas à son utilisation.
Ce qui est pour moi une bonne chose, je débute sur excel.
Merci pour le retour. Titre ajusté :)
Bonjour,
Je n'y connais vraiment pas grand chose en macros... J'ai tenté d'appliquer votre méthode à un de mes fichiers et j'ai un message de ce type : "Propriété ou méthode non gérée par cet objet" ? Avez-vous une idée de l'origine de ce type d'erreur ?
Merci !
Guillaume
Bonjour, si vous pouvez identifier la ligne du code qui est en surbrillance quand vous choisissez Débogage au moment de l'erreur, cela me donnera une meilleure idée du problème et éventuellement une solution.
Bonjour, s'il te plait je suis débutante aussi et je suis bloquée sur un problème pareil mais j'ai pas su adapter à mon cas.
En gros j'aimerai créer une macro qui reproduit le travail de la fonction rechercheV d'excel mais qui doit s'exécuter automatiquement lorsque j'appelle la macro sur la feuille 5 . Sur la feuille 5 j'ai une colonne avec des noms de pièces, la 2ème contient les quantités de chaque pièce et la 4ème doit contenir le cout de la pièce en question * la quantité. Les coûts se trouvent dans la 3ème feuille du même classeur donc Le code que j'ai proposé est le suivant:
Function RechercheV_Coût(valeur_cherchée As Variant, Table_Coût As Range, No_index_col As Single, optional_value As Boolean)
On Error GoTo RechercheV_Coûterror
RechercheV_Coût = Application.VLookup(valeur_cherchée, Table_Coût, No_index_col, optional_value)
If IsError(RechercheV_Coût) Then RechercheV_Coût = "#N/A"
Exit Function
RechercheV_Coûterror:
RechercheV_Coût = "#N/A"
End Function
Sub Coût_PLD()
Dim ma_valeur As Variant
Dim ma_plage As Range
Dim ma_colonne As Single
Dim L As Integer
Dim valeur_proche As Boolean
ma_valeur = "Feuil3.cells(L,2)"
Set ma_plage = workbook.sheets("feuil3").Range("A:B")
ma_colonne = 2
valeut_proche = False
Feuil5.Cells(L, 4).Value = RechercheV_Coût(ma_valeur, ma_plage, ma - colonne, valeur_proche).Value*Feuil5.cells5(L,2).value
L= L+1
End Sub
On m'indique qu'il y'a une erreur au niveau de la ligne "Set ma_plage = workbook.sheets("feuil3").Range("A:B")" sauf que je n'arrive pas à la résoudre. Merci d'avance
Bonjour,
Je vois que le fichier n'est pas définit, donc il faut soit écrire ActiveWorkbook.Sheets("Feuil3").... ou enlever la mention workbook. A voir si ça règle le problème déjà. :)
Bonjour Kevin, superbe vidéo, merci beaucoup !
Je suis un grand débutant avec VBA et vos vidéos sont de très bons guides ! :)
J'ai cependant une question, je dois copier plusieurs données d'un fichier excel à un autre, je pense avoir réussi à adapter votre code en commentaire à ma situation, la macro se lance sans erreur affichée et pourtant rien ne se passe, pensez vous que le fait que mes données soient sous forme de tableau peut bloquer ?
Merci par avance pour votre réponse et encore merci pour vos vidéos !
Bonjour, normalement ça ne devrait pas avoir d'impact. Dans le doute, on peut utiliser un .Value si on fait une correspondance entre cellules. Généralement, un problème comme ça est plus facilement lié à un problème dans la succession des étapes, par exemple ça ne colle pas la bonne chose, ou un problème dans l'adaptation du code, par exemple le code ne regarde pas dans la bonne colonne pour la correspondance.
Super mrc bcq 🙏