Copier Coller spécial VBA excel

levag Messages postés 8 Date d'inscription mardi 21 juin 2016 Statut Membre Dernière intervention 2 mai 2017 - 21 juin 2016 à 17:58
levag Messages postés 8 Date d'inscription mardi 21 juin 2016 Statut Membre Dernière intervention 2 mai 2017 - 22 juin 2016 à 18:19
Bonjour à tous,

Tout d'abord un grand merci à tous ceux qui aident les débutants comme moi!

Ceci étant dit voici mon problème,

J'ai d'une part ces deux lignes: (je vous mets que les premières dates mais ça court sur toute l'année 2015)

1/1/2015 1/2/2015 1/3/2015 1/4/2015 1/5/2015 1/6/2015 1/7/2015
0 0 0 0 0 0 0

Et d'autres part ces deux colones:

Quantités Dates
105.10 07/20/2015
59.60 07/21/2015
-59.60 07/27/2015
99.70 08/10/2015
39.40 08/20/2015
51.00 08/27/2015
17.70 09/15/2015
59.30 09/15/2015
2.50 09/23/2015
11.90 09/28/2015
142.10 09/28/2015
17.20 10/20/2015
21.60 10/27/2015
35.70 11/03/2015

Ce que je voudrais faire c'est sélectionner la cellules 07/20/2015, parcourir la ligne des dates de l'année 2015 et lorsque je trouve la date je colle la quantités correspondante, donc ici 105.10 ft.

J'espère avoir été assez clair et merci de votre aide!!

8 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
21 juin 2016 à 18:16
Bonjour,
Sois s'il te plait très précis (c'est une nécessité et non un luxe, en développement informatique).
Je suppose (puisqu'il me faut supposer) que tu veux coller la quantité dans la seconde ligne, même colonne.
Confirme.
Et détaille également ce mécanisme" :
Ce que je voudrais faire c'est sélectionner la cellules 07/20/2015

s'agit-il vraiment de "sélectionner" (ce qui veut dire manuellement, car si en développement ; ce n'est pas à coups de "select", etc ...), ou s'agit-il de parcourir tes "deux colonnes" et reporter les quantités lorsqu'une occurrence est trouvée ?
0
levag Messages postés 8 Date d'inscription mardi 21 juin 2016 Statut Membre Dernière intervention 2 mai 2017
21 juin 2016 à 18:24
Ah oui désolé pas assez précis,

Ce que je souhaite c'est comparer la ligne de toute les dates de l'année 2015 avec ma cellule sélectionnée (j'avais pensé au cells().select pour la comparer avec la ligne des dates) et lorsqu'il y a une occurence (donc dans la ligne des dates 2015 je tombe sur le 07/20/2015) alors copier la quantité correspondante (dans mon exemple le nombre 105.10) et la coller en dessous de la date dans la ligne des dates de l'année 2015.

Est-ce plus clair?

Déso je démarre dans le code et la j'y arrive vraiment pas,

Merci,
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 21/06/2016 à 18:56
Ce qui ne répond toujours pas avec précision à ma question pourtant précise, à savoir :
s'agit-il vraiment de "sélectionner" (ce qui veut dire manuellement, car si en développement ; ce n'est pas à coups de "select", etc ...), ou s'agit-il de parcourir tes "deux colonnes" et reporter les quantités lorsqu'une occurrence est trouvée ?

(en observant que ni la question, ni la réponse qu'elle appelle, ne nécessitent aucune connaissance en développement ... Ce n'est qu'une question et elle n'attend qu'une réponse) .

EDIT : lis-don le texte de ma signature ...

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 21/06/2016 à 19:06
Et les questions ne sont pas finies, très loin de là, même ...
1) Où (sur quelle feuille et à quelles lignes sont tes "deux lignes") ?
2) Où (sur quelle feuille et à partir de quelle ligne et quelle colonne sont tes "deux colonnes") ?
3) toutes les lignes de tes "deux colonnes" ont-elles une "correspondance de date" dans tes "deux lignes" ? Et si oui : une seule possible ou non ?
Rien qu'en me lisant, tu vas découvrir la nécessité d'être très clair. Et cela montre que tu maîtrises ou non ta propre pensée ! Et cela est également plus des 3/4 du "chemin" ...


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
levag Messages postés 8 Date d'inscription mardi 21 juin 2016 Statut Membre Dernière intervention 2 mai 2017
21 juin 2016 à 20:51
Alors je vais reprendre depuis le début afin d'être le plus clair et précis possible:

Je n'ai qu'une feuille de calcul excel dans laquelle j'ai :

sur la ligne 8 et à partir de la colone 7 les dates de l'année 2015 (01/01/2015, 01/02/2015, 01/03/2015 [...] 12/29/2015,12/30/2015,12/31/2015).

sur la ligne 9 et à partir de la colone 7 des 0 sous les dates sus mentionnée

sur la colone 15 et de la ligne 15 à 37 j'ai différentes dates

sur la colone 14 et de la ligne 15 à 37 j'ai des nombres qui correspondent aux quantités vendues

Ce que je recherche à faire c'est écrire une macro qui:

sélectionne la cellule cells(15,15) au sens code (donc cells(15,15).select) puis parcoure les dates de la ligne 8 et lorsque la date de la ligne 8=cells(15,15) alors copier la cells(14,15) et la coller dans la cellule de la ligne 9 qui correspond à la date de la ligne 8 qui vient d'ètre trouvée. Une fois ce copier coller effectué passer à la cells(16,15) et recommencer l'opération jusqu'à ce que l'on atteigne la cells(37,15).
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
21 juin 2016 à 22:46
C'est déjà moins imprécis.
Il manque toutefois la réponse à ma question3), non ? Et cette réponse est très très très importante !

Et tu verras : lorsque l'on aura enfin tout (et donc la réponse 3) ===>> il n'y aura aucun Select ... (on ne travaille jamais à coups de select, mais directement avec les objets Excel !)
0
levag Messages postés 8 Date d'inscription mardi 21 juin 2016 Statut Membre Dernière intervention 2 mai 2017
21 juin 2016 à 22:50
Ah pardon oui il n'y a qu'une seule correspondance possible!
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 22/06/2016 à 08:04
Tu n'as répondu qu'à moitié !
Je dois allez dormir et ne compte pas passer mon temps à poser cette question une fois de plus.
Je vais donc considérer (et tant pis pour toi si ce n'est pas cela) que
toutes les lignes de tes "deux colonnes" ont une "correspondance de date" dans tes "deux lignes"


regarde alors :
Set plage = Range("N15:O37")
Set desti = Range("G8:AC9")
toto = WorksheetFunction.Transpose(plage)
desti.Value = toto
tata = Range("G9:AC9")
titi = Range("G8:AC8")
Range("G8:AC8").Value = tata
Range("G9:AC9").Value = titi

bonne nuit.

EDIT :
ce qui revient à écrire plus directement ainsi :

Range("G8:AC9").Value = WorksheetFunction.Transpose(Range("N15:O37"))
tata = Range("G9:AC9")
titi = Range("G8:AC8")
Range("G8:AC8").Value = tata
Range("G9:AC9").Value = titi


ou encore ainsi :
Range("G9:AC9").Value = WorksheetFunction.Transpose(Range("N15:N37"))
Range("G8:AC8").Value = WorksheetFunction.Transpose(Range("O15:O37"))


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
0
levag Messages postés 8 Date d'inscription mardi 21 juin 2016 Statut Membre Dernière intervention 2 mai 2017
22 juin 2016 à 17:10
Merci mais je ne cherche pas à faire un copier coller en transposant les colones en lignes. C'est bien plus compliqué que ça. Peut être que je ne m'exprime pas assez clairement, il me semble pourtant que c'est très clair si on prend le temps d'écrire ce que j'ai dit plus haut. Tant pis je vais essayer de faire ça tout seul,

merci quand meme
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
22 juin 2016 à 17:59
Bonjour,
Une simple formule RechercheV ne suffirait pas ?
0
levag Messages postés 8 Date d'inscription mardi 21 juin 2016 Statut Membre Dernière intervention 2 mai 2017 > cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018
22 juin 2016 à 18:19
Ah bah oui!!!! Je suis sur ce code depuis 4 jours alors qu'un simple RechercheV suffit!! Merci milles fois!
0
Rejoignez-nous