Ligne excel et macro

H

hugo

Guest
bonjour,
Je ne connaissais pas ce site, et j'espère pouvoir trouver une solution à mon problème, déjà avant tout, je vous souhaite à tous, mes meilleurs voeux, pour cette nouvelle année.

Je travail avec excel, avec des lignes, je copie, je colle, les lignes entières, comprenant des données. J'aimerais savoir comment, avec l'aide d'une macro, copier automatiquement, une ligne de la feuil 1 et la coller sur la feuille 2.

Je m'explique, j'ai une ligne par exemple sur 1 ou 2 3 ou.....jusqu'à 20

je voudrais sans faire manuellement coller toute les ligne sur la feuil 2.

Jusque là pas de problème, c'est du ''paste worksheet''.

là ou je ne sais pas c'est ensuite le lendemain, mes lignes de 1 à 20 sur la feuille 1 ,vont etre remplacés, par d'autre ligne de la journée.

La feuil-2 se mettra à jour automatique, et donc je n'aurais pas d'historique.

En clair je voudrais que la feuille-2, fasse apparaître, les lignes supplémentaires de la journée, sans remplacer les précédentes.

et pour cela je pense que la macro, devrait être du style, ''insérer'' ligne, après le dernier coller, et paste, la ligne de feuil 1.

Tout cela me permettrais d'avoir une feuil-1 avec les ligne de la journée, (10-20 ligne) et sur la feuille 2 tout le recap, de toute les journées.

merci beaucoup d'avance pour votre aide, j'espère que le professionnel connaissant la réponse, me répondra.

Cordialement, ce serait géant
 
H

hugo

Guest
Re: => Mini Démo de copié/collé en foction couleur de cellule

Bonjour, Thierry,
A chaque fois que je viens ici, je suis subjugué par toutes, ces, performances. j'ai regardé ton fichier plus en détail, et vraiment il n'y'a rien à faire, je n'arrive pas à le modifier selon des registres. j'ai compris le systeme de N° de range, mais dés que j'affine un peu plus, j'ai des message d'erreur, du style ''fin de ligne en deboggage'', la selection n'appartien pas....'' ou alors j'ai l'écran psychedélique qui clignotte, ''lol j'ai l'impression qu'il va exploser.

Donc je suis complètement perdu dans toutes ces lignes de codes qui pour toi sont qu'un simple alphabet.

Je recolle ici, le code que tu a créé spécialement pour moi.

Sub Report()
Dim DerLigneCible As Integer
Dim DerLigneSource As Integer
Dim PlageSource As Range
Dim Cell As Range


DerLigneSource = Sheets("Data").Range("A65536").End(xlUp).Row
If DerLigneSource = 1 Then Exit Sub
Set PlageSource = Sheets("Data").Range("A2:A" & DerLigneSource)

For Each Cell In PlageSource
If Cell.Interior.ColorIndex = 44 Then
DerLigneCible = Sheets("Historiques").Range("A65536").End(xlUp).Row + 1
Cell.EntireRow.Cut
ActiveSheet.Paste Worksheets("Historiques").Range("A" & DerLigneCible)
End If
Next Cell
End Sub

J'ai compris ton système de bouton, qui d'ailleur evite la manipulation fastidieuse, du Alt-F8.

Mon idée serait, de mettre un bouton, pour chaque catégorie (groupe) ou (sous groupe).

J'aurais donc, si j'ai bien compris, autant de macro, que de bouton.

Dans ta macro, tu définis, ''selectionner des lignes'' dans ''data', et de les deplacer dans ''Historiques'', (D'aileur je prefere, le deplacement plutôt qu'au copier coller)

Comme je n'arrive pas à examiner ton fichier, je ne sais pas comment définir un range, car, Range("A65536").End(xlUp).Row + 1 me porte confusion.

L'idée, serais de définir, une selection, par exemple (23:71)

et de la déplacer, dans l'historique, à par exemple (23:2998)

Pour l'historique, j'ai prévu large.

et en dessous de la ligne 2998, j'aurais un 2eme groupe d'historique.
donc la range, sera, (3001:5000)

Donc en résumé,
cela reviens, à travailler sur ''data'', d'une maniere un peu plus large.

Dans data je n'insere plus de ligne, elle sont maintenant coller, cela permet d'éviter, les problemes de réajustement des valeurs des lignes.

Par exemple dans data, je collerais les lignes, de (23:71)

Meme si elle ne vont pas tout le temps jusqu'à 71 ce n'est pas grave, cela me permet d'avoir un espace pour le au cas, où.

En effet, je pense qu'il serait plus simple, si elle définit tous le temps une selection de (23:71)

et qu'elle déplace, cette séléction à ''historique'' (23:2998)

Pour le 2eme groupe c'est pareil, j'affecterais, un 2ème bouton, à une macro, qui selectionnera (A75:127) et deplacera, cette selection à ''historique, (A3001:5000).

Sans le code de cette selection ''précise''(d'un point à un autre), ''precise'' ( car dans ton script, Range("A2:A" & DerLigneSource) elle selectionne, de 2 jusqu'a la fin de la feuille soit 99999)

donc en effet dans ce cas, il me faudrais une ''feuil'' par groupe, et sous groupe.

et pareil pour le script.
ActiveSheet.Paste Worksheets("Historiques").Range("A" & DerLigneCible)

En effet, tu a trouver la solution, c'est vraiment le code couleur, qui défini, la selection et cela ne m'était vraiment pas venu, à l'idée.

Je sais que tu ne prendrais vraiment pas de temps, pour changer, ces valeurs, car c'est pour toi telement simple, j'ai tenté de faire

Range(26:76)
Range(A26:A76)

de ce coté c'a marche mais dés que je change

Range("A65536").End(xlUp).Row + 1

L'écran serais prêt à exploser.

Je pense que si j'ai cette formule de selection d'un point à autre point, (26:76) et qu'il déplace à (26:2998)

j'arriverais, à définir, les autres points pour les autres groupes.

Je te remercie, beaucoup, beaucoup, sans toi, je n'aurais pas pu avancer, dans mes idées.

Hugo

''Si j'arrive à décroché un financement d'une banque, (car ces mecs il veulent toujours des statistiques détaillées, et des historiques) je saurais grace à qui'''
 
@

@+Thierry

Guest
Re: => Mini Démo de copié/collé en foction couleur de cellule

Bonjour à tous et toutes...

Encore un mail dans ma BAL ... (Grrrr)

-----Message d'origine-----
De : Hugo
Envoyé : mercredi 15 janvier 2003 04:24
À : thierry
Objet : Re: => Mini Démo de copié/collé en foction couleur de cellule


Salut Thierry,
Je ne sais pas si tu es très occupé, ou si tu a décidé de ne plus faire attention à moi, j'avais posté un message dernièrement sur le forum, je pensais que tu allais m'apporter une réponse, au cas où, tu ne l'ai pas reçu, je me permet, de te joindre par mail.

Voici le texte posté sur le forum
merci


VOICI MA REPONSE :

Salut Hugo,

Je ne sais pas pourquoi tu te compliques la vie de cette manière...

Par ailleurs, je ne sais pas si tu as remarqué mais dans le forum je réponds à une grosse quantité des questions posées et çà va très très vite. Je ne peux que consacrer qu'un minimum de temps à chacun.

J'avais survolé cette nouvelle question dans le forum et vu que tu t'exprimes en chinois j'ai laissé tombé...

Comment çà tu dis "J"ai prévu plus large".... dans mon prog IL N'Y A PAS DE LIMITE... ni en feuil DATA ni en feuille HISTO donc tu ne peux pas prévoir plus large. (???)

En plus je ne comprends absolument pas ce que tu veux ??? (Explication en français STP !! les numéros de lignes ne me disent STRICTEMENT RIEN? Tu as ton tableau en tête, pas moi !!!, je dois voir plus de 100 cas de figures par jour!)

Refais un post dans le Forum en t'expliquant clairement !!!

De plus je déteste être relancé par mail.,

Pour ta gouverne "("A65536").End(xlUp).Row + 1 me porte confusion."
ça signifie que je dis en VBA de trouver la DERNIERE cellule du tableau que ce soit la ligne 5 ou la ligne 200 ou encore 35555 ...

Ce n'est pas non plus que "j'ai décidé de ne plus faire attention à toi" !!! mais il y a plein de gens qui s'expliquent clairement auxquels je réponds, il y en a d'autres qui sont tellement embrouillés dans leur idées et par conséquent dans leurs explications que je n'ai pas le temps.

Mon boulot c'est le développement informatique et la première règle c'est de comprendre le BUT FINAL avant tout développement, je me fiche éperdument de savoir les numéros de range et les idées de méthodes de programmations des gens qui n'y comprennent strictement rien... Je veux savoir "QUOI", "QUAND" et "POURQUOI"........ le "COMMENT" c'est mon job...

Alors tu fais un nouveau post et explique-toi clairement dans LA NATURE DES DONNEES A TRAITER, LE BUT QUE TU VEUX OBTENIR et pas "une selection, par exemple (23:71) et de la déplacer, dans l'historique, à par exemple (23:2998).... qui selectionnera (A75:127) et deplacera, cette selection à ''historique, (A3001:5000).... etc"

Allez bonne journée

@+Thierry

PS ne prends pas çà contre toi, mais lis ce post STP :

<http://www.excel-downloads.com/html/French/forum/read.php?f=1&i=6763&t=6763>
 

Discussions similaires

Réponses
12
Affichages
247

Statistiques des forums

Discussions
315 111
Messages
2 116 340
Membres
112 721
dernier inscrit
Ulricn