Copier à la suite et récupérer valeur

Fermé
Amesam Messages postés 18 Date d'inscription dimanche 2 décembre 2012 Statut Membre Dernière intervention 9 janvier 2018 - 8 janv. 2018 à 18:52
Amesam Messages postés 18 Date d'inscription dimanche 2 décembre 2012 Statut Membre Dernière intervention 9 janvier 2018 - 9 janv. 2018 à 13:37
Bonjour,

J'utilise cette macro pour coller plusieurs cellules à la suite.

Sub MacroCopie()
    Sheets("FICHE").Range("A1:K30").Copy
    Sheets("Controle").Range("A1048576").End(xlUp).Offset(2).Select
    ActiveSheet.Paste
End Sub


Je cherche à récupérer sur ma première copie les cellules I16 et I17 et qu'elles viennent incrémenter un tableau sur la feuille Controle, par exemple en position M3 et M4. et idem pour la deuxième copie (soit I47 et I48) ect pour la troisième copie et ainsi de suite. Suis-je obliger d'écrire cellule par cellule
Cette liste peut-être très longue. Peut-être récupérer la dernière copie et une position ?

Je cherche aussi autre chose pour cette même feuille "Controle", mais surement bien plus compliqué !
Serait-il possible que ces copies se classes par ordre croissant par rapport à la cellule I17, I47, I77 ect

imaginons que j'ai en I77 la valeur 2 et en I17 la valeur 3 et en I47 la valeur 1 et que je veuille les remettre dans l'ordre, en gardant bien sur la totalité de la copie, est-ce possible ?

Merci.

3 réponses

yg_be Messages postés 20738 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 novembre 2022 1 268
Modifié le 8 janv. 2018 à 20:41
bonsoir, pour la première partie de ta question, il me semble qu'il serait plus simple de récupérer les deux valeurs dans FICHE, puisqu'elles sont toujours à un endroit fixe.

pour la seconde partie, c'est possible, en effet. ce serait même plus simple à faire si tu as toutes les valeurs (I17, I47, ...) dans un tableau. ou si il suffisait d'insérer la nouvelle copie au bon endroit, les anciennes étant déjà triées.
combien as-tu de blocs de 30 lignes au total, environ?
0
Amesam Messages postés 18 Date d'inscription dimanche 2 décembre 2012 Statut Membre Dernière intervention 9 janvier 2018 3
Modifié le 8 janv. 2018 à 21:45
Bonsoir,

Merci pour cette réponse.
Pour la première partie je ne peux pas extraire depuis la feuille FICHE.
Je m'explique : pour l'exemple donné je prends les cellules de FICHE que je copie dans Controle et je modifie dans Controle. Dans mon classeur plusieurs Controle qui sont en fait des clients, donc plusieurs feuille avec le nom des clients. FICHE et Controle sont pour l'exemple.

Combien de fiche et bien ça peut être plusieurs centaines pour certains et voir plusieurs milliers pour d'autres.

Voici un exemple :

https://cloudtag.io/hashtag/testxlsmccm


Merci.

Edit : J'ai pas réfléchit ! Je peux très bien modifier depuis FICHE !
0
Amesam Messages postés 18 Date d'inscription dimanche 2 décembre 2012 Statut Membre Dernière intervention 9 janvier 2018 3
Modifié le 8 janv. 2018 à 23:10
En faisant ainsi ça fonctionne très bien, il faut que je supprime la mise en forme, si c'est bon.

Sub Copie_ACORUS()
    Sheets("FICHE").Range("A1:K30").Copy
    Sheets("Client1").Range("A1048576").End(xlUp).Offset(4).Select
    ActiveSheet.Paste
    ' Copie : Vos références
    Sheets("FICHE").Range("H12").Copy
    Sheets("Client1").Range("M1048576").End(xlUp).Offset(1).Select
    'Selection.PasteAndFormat Type:=wdFormatPlainText
    ActiveSheet.Paste
    ' Copie :  Type
    Sheets("FICHE").Range("F13").Copy
    Sheets("Client1").Range("N1048576").End(xlUp).Offset(1).Select
    ActiveSheet.Paste
    ' Copie : Désignation
    Sheets("FICHE").Range("F14").Copy
    Sheets("Client1").Range("O1048576").End(xlUp).Offset(1).Select
    ActiveSheet.Paste
    ' Copie : N° SERIE
    Sheets("FICHE").Range("I16").Copy
    Sheets("Client1").Range("P1048576").End(xlUp).Offset(1).Select
    ActiveSheet.Paste
    ' Copie : Vos N° INTERNE
    Sheets("FICHE").Range("I17").Copy
    Sheets("Client1").Range("Q1048576").End(xlUp).Offset(1).Select
    ActiveSheet.Paste
    ' Copie : Anomalies
    Sheets("FICHE").Range("A27").Copy
    Sheets("Client1").Range("R1048576").End(xlUp).Offset(1).Select
    ActiveSheet.Paste
End Sub



Pour le tri des fiches je n'ai aucune idée.
Merci.


Edit : J'ai trouvé pour la copie sans mise en forme.

Sub Copie_ACORUS()
    Sheets("FICHE").Range("A1:K30").Copy
    Sheets("Client1").Range("A1048576").End(xlUp).Offset(4).Select
    ActiveSheet.Paste
    'Copie : Vos références
    Sheets("FICHE").Range("H12").Copy
    Sheets("Client1").Range("M1048576").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
    I = ActiveSheet.UsedRange.Rows.Count
    Cells(I + 1, 1).PasteSpecial (xlPasteValues)
    ' Copie :  Type
    Sheets("FICHE").Range("F13").Copy
    Sheets("Client1").Range("N1048576").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
    I = ActiveSheet.UsedRange.Rows.Count
    Cells(I + 1, 1).PasteSpecial (xlPasteValues)   
    ' Copie : Désignation
    Sheets("FICHE").Range("F14").Copy
    Sheets("Client1").Range("O1048576").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
    I = ActiveSheet.UsedRange.Rows.Count
    Cells(I + 1, 1).PasteSpecial (xlPasteValues)   
    ' Copie : N° SERIE
    Sheets("FICHE").Range("I16").Copy
    Sheets("Client1").Range("P1048576").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
    I = ActiveSheet.UsedRange.Rows.Count
    Cells(I + 1, 1).PasteSpecial (xlPasteValues)   
    ' Copie : Vos N° INTERNE
    Sheets("FICHE").Range("I17").Copy
    Sheets("Client1").Range("Q1048576").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
   I = ActiveSheet.UsedRange.Rows.Count
    Cells(I + 1, 1).PasteSpecial (xlPasteValues)  
    ' Copie : Anomalies
    Sheets("FICHE").Range("A27").Copy
    Sheets("Client1").Range("R1048576").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
   I = ActiveSheet.UsedRange.Rows.Count
    Cells(I + 1, 1).PasteSpecial (xlPasteValues)  
    Application.CutCopyMode = False
End Sub


Bon plus qu'a trier le premier copiage dans le feuille Client.
Merci :o)
0
Amesam Messages postés 18 Date d'inscription dimanche 2 décembre 2012 Statut Membre Dernière intervention 9 janvier 2018 3
9 janv. 2018 à 13:37
Bonjour,

Si quelqu'un à une idée je suis preneur.
Merci.
0