Macro copier coller avec tri

Tristan19 -  
 Tristan 19 -
Bonjour

Voilà je me lance dans le monde de la macro et après quelques macros réussi je me retrouve fasse à une montagne.
Je suis en train de réaliser un fichier de rappro et sur une feuille excel j'ai des données extraite de mon logiciel comptable avec sur la colonne A la donnée de la banque (car j'ai plusieurs banques) et de C à G mes données à copier.
Cependant j'ai plusieurs banques à redispascher dans la feuille correspondante à la banque mais dans cette feuille il y a des données que je ne veux pas écraser.

Pour résumer :
. Comment copier des données et les recoller dans la bonne feuille
. Et comment recopier dans une plage vide et non pas écraser les données existantes


Merci pour votre aide car je commence à me noyer :)


A voir également:

16 réponses

anto
 
Bonjour,
je m'incruste un peu dans la discussion!
En effet je dois réaliser une macro assez similaire et ça m'intéresserais d'avoir le code.

Serait il possible de commenter un minimum le code, que je comprenne et puisse adapter à mon cas?

D'avance, merci
2
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Tu veux qu'on commente quel code ? On a pas posté de code ici :-)
0
anto
 
le code que tu as fait pour Tristan19, je disais ça en prévision
à moins que tu ne veuilles pas le diffuser ici....
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Pas de soucis de mon côté mais c'est assez spécifique.
Si tu me dis ce que tu veux faire, je peux le retoucher pour que ca colle avec ce que tu veux et t'expliquer point par point comment ca marche ?
0
anto
 
Et bien pourquoi pas! je ne voulais pas abusé mais puisque tu proposes....

Tout d'abord voici mon document :
http://www.cijoint.fr/cjlink.php?file=cj201004/cij6vadK8h.xls

Il s'agit d'un tableau recensant différentes opérations commerciales en cours (ligne) avec différentes infos pour chacune (colonnes) J'aimerais, grâce à une macro, obtenir un tableau synthétique reprenant chaque opération avec seulement quelques informations.
Je ne sais pas encore lesquelles mais prend 2-3 colonnes au hasard, j'adapterais le moment voulu.
Ce tableau doit être dans un document séparé (genre synthese.xls)

Concernant les macros en général, où dois-je les enregistrer? est ce que les 2 documents (tableau original + tableau synthétique) devront être ouvert? depuis lequel des deux dois-je exécuter la macro?

J'espère avoir été assez clair dans mes explications

merci d'avance
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Tu veux dire quoi par 2 documents séparés ? 2 fichiers Excel différents ou les 2 feuilles que tu as dans ton doc (tu as une feuille SYNTHESE, donc ca porte à confusion) ?
Ta macro tu la mets dans un module et tu la lances depuis un bouton dans ta premiere feuille par exemple.

Le plus simple pour tes colonnes est de les sélectionner (en précisant une ligne de début et de fin) et copier/coller.
Je te met le code quand tu auras éclairci les points ci dessus :-)
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Salut

Désolé de répondre après 2 jours.
Peux tu préciser ce que tu veux faire ? C'est assez flou pour le moment...
Le mieux serait aussi de poster ton fichier Excel sur ce site : http://www.cijoint.fr/ et de donner le lien généré.

A+
0
Tristan19
 
Merci pour ce premier retour

Voici le lien ci joint :
http://www.cijoint.fr/cjlink.php?file=cj201003/cijIofxTBv.xlsx

Ci dessous une réexplication peut être je serais plus claire :)
Voilà j'ai une extraction de mon logiciel comptable sur Excel de l'ensemble de mes mouvements "feuill données de Ross" problème j'ai plusieurs banques qui sont affichés dans la colonne A (dans l'ordre heureusement)


Je voudrais copier cette donnée et la mettre dans la bonne feuille de mon rappro (chaque banque à sa propre feuille) et en plus je ne veux pas écraser les données existantes sur ces feuilles bien sur.


Y a-t-il un moyen de remonter des cellules je m'explique j'ai une plage fixe de 20 lignes dedans rappro oblige j'ai des données qui disparaissent je voudrais remonter l'ensemble des données en haut de ma plage.


Merci en tout cas pour toute aide
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Re salut

Bon, je pense avoir compris :-)
Par contre, tu dois tourner sous Excel 2007 non ? Comme j'ai Excel 2003, je peux pas lire ton fichier... Tu peux l'enregistrer en .xls et le reposter stp ?
A+
0

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

Posez votre question
Tristan19
 
Ci joint le fichier en XLS

http://www.cijoint.fr/cjlink.php?file=cj201003/cijFUpcNmX.xls

Encore merci pour ton aide.
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Bon finalement, en voyant ton fichier, c'est pas si clair que ca ^^
Je résume pour que tu confirmes si c'est bien ce que tu veux.

Les données présentes dans "Données de Ross" doivent être copiées soit dans SG soit dans SG2116 (juste les crédits et débits ?) en respectant la banque correspondante.

par contre pour ton histoire de remonter des cellules, lesquelles, dans quelles feuilles et comment exactement ?
0
Tristan19
 
Alors la première étape est bien comprise. En effet c'est cela en sachant que d'une journée sur l'autre le nombre de ligne va varié bien évidemment.

Cependant prenons l'exemple du SG tu copies l'ensemble des lignes SG et tu vas les collées dans la feuille SG entre la collone B:G et la ligne 8 à 29. Cependant tu as desfois des données dans ces champs qui ne doivent pas être éffacées comment faire du coup pour copier les nouvelles données sans effacer les anciennes.
Donc je me suis dis pourquoi ne pas remonter l'ensemble des veilles données au top des cellules et de copier les nouvelles juste en dessous.

J'espère avoir été plus claire.
Cordialement
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Oui c'est clair.
Mais tu veux fixer la liste de SG entre les lignes 8 à 29 ou on agrandit au fur et à mesure ?
Dans ce cas, un coup d'insertion de ligne et c'est bon, avec un tri pour mettre les plus récentes au début. Tout ca en automatique :-)
Ca t'irait ?
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Bon, j'ai fini le code de copie en triant SG de SG2116.
J'ai fait une fonction d'insertion de nouvelle ligne pour ne pas effacer tes anciennes valeurs.
Je te poste ca demain suivant ta réponse concernant le tri.

Les cons peuvent avoir l'air intelligent à première vue... Heureusement pour eux que la vitesse de la lumière est supérieure à celle du son.
0
Tristan19
 
Waouuh j'ai hate de voir.

Pour répondre à ta question oui je dois fixer lal iste entre 8 et 29 car derrière j'ai une autre macrio qui tourne (que j'ai faite :) hihi) qui tourne dans ce périmètre.

Je te remericie sincèrement pour ton aide
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Pas de quoi :-)

Mais si ta liste ne peut pas être plus grande que la ligne 29, tu devras supprimer les anciennes données...
Et donc l'insertion ne marche plus dans ce cas là...
Alors on fait comment ?
0
Tristan19
 
Re en faiteentre lal igne 8 et 29 il ya des données qui disparraissent au fur et à mesure car j'ai effectué une macro qui si elle trouve une donnée similaire avec le tableau du dessous la fait disparaitre donc j'ai toujours assez de place entre 8 et 29 d'où la non nécessité de rajouter des lignes mais plutôt de combler les trous c'est pour cela que j'avais comme idée que lorsque le rapprochement est fait remonter l'ensemble des données au top pour laisser la place le lendemain au nouvelle données entre par exemple 11 et 29 ou 10 et 29............. la taille de la place dépend des données restantes mais je me répète il y atoujours assez de place.

Merci pour tout
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Ok mais tu as des trous bizarres parfois (par exemple pas de nom d'opération mais un crédit ou débit effectué). tu peux pas leur mettre un nom ?
Ca serait plus simple, sinon, ca sera effacé...
0
Tristan19
 
Oui tu as tout a fait raison normalement il y a mais comme c était un fichier de test. J ai rempli au plus vite mais je suis d' accord avec toi il doit y avoir qq chose. Donc si c est mieux c est parfait
cordialement
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
voici le fichier : http://www.cijoint.fr/cjlink.php?file=cj201004/cijAf7lhzZ.xls :-)
0
Tristan19
 
Merci ^pour ton fichier mais j'ai une question tu insère des lignes il n'es pas possible de rester dans le même format (le même nombre de ligne)
En tout cas c'est déjà très sympa
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Réparé :-)
Désolé, j'avais oublié d'enlever tout ca.
Voici le nouveau fichier :

http://www.cijoint.fr/cjlink.php?file=cj201004/cij6ouFEEu.xls
0
Tristan19
 
tu es un chef Merci énormément pour ton aide je vais regarder plus en détail lal macro mais ca à tout l'air d'être ca.

Merci encore
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Pas de quoi !
Et passe ton sujet en Résolu si c'est bon :-)

A+
0
Tristan19
 
j'ai une dernière question promis c'est la dernière :) si au lieu de débit credit dans la première feuille j'ai tout sur la même avec en débit les chiffres négatifs et en credit les chiffres positifs que je dois envoyer sur l'autre feuille et que sur cette deuxième feuille (FG600) tous est bien recasser en valeur absolue j'ai essayer un truc à travers ta macro mais il me mets vrai ou faux dans la deuxième feuille lol
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
Recommences, j'ai pas tout compris...
Tu veux mettre en négatif tes débits et les mettre en valeur absolue pour le décompte dans les auters feuilles ?
Et c'est quoi cette histoire de VRAI ou FAUX ?
0
Tristan 19
 
Heu oui stp :p
0
Tristan 19
 
Je crois que je suis arrivé je suis trop fier lol :)))))
Mais montre moi quand même pour voir comment toi tu fais :)
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
repostes ton fichier avec les modifications alors :-)
0
zebulon2503 Messages postés 1228 Date d'inscription   Statut Membre Dernière intervention   110
 
UP
0
Tristan 19
 
Voila la macro et elle fonctionne très bien avec mon fichier merci pour tout !

Sheets("données SG").Select
Range("A5").Select
Do Until ActiveCell.Value = ""
ActiveCell.Offset(1, 0).Select
Loop
Derniere_Ligne = ActiveCell.Row - 1

For i = 5 To Derniere_Ligne
Cells(i, 1).Select
Select Case ActiveCell.Value
Case "FR7630003014300002009019122"
Date_Operation = Cells(i, 10).Value
Informations = Cells(i, 12).Value
Montant = Cells(i, 13).Value

Sheets("FG 0600").Select
Cells(40, 1).Activate
Do Until ActiveCell.Value = ""
ActiveCell.Offset(1, 0).Select
Loop
If ActiveCell.Row = 67 Then
MsgBox ("Error, not enough place. Please delete entries")
GoTo FIN
ElseIf ActiveCell.Row < 67 Then
If Montant < 0 Then

ActiveCell.Value = Date_Operation
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = Informations
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Montant * -1
Else
ActiveCell.Value = Date_Operation
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = Informations
ActiveCell.Offset(0, 2).Select
ActiveCell.Value = Montant
End If
End If

Sheets("données SG").Select
0