Transfert données entre deux tableau excel

louloutte63 -  
 louloutte63 -
Bonjour à tous,

je suis actuellement étudiant en projet erasmus et on m'a donné un projet à réaliser concernant l'utilisation de visual basic (ce qui me fait un peu peur au vue de mes connaissances en programmation et dans ce logiciel, et la complexité du projet...mais ce n'est pas le sujet de mon post!)

j'aimerai pouvoir mettre en place un programme qui permet de sélectionner (colonne par colonne) dans un tableau (100 colonne et 20 lignes) d'une feuille excel 1 les différentes valeurs présentes dans ces colonnes, et les mémorisées pour par la suite les réinjecter dans un autre tableau dans la feuille excel 2 (numéro de colonnes et de lignes différentes du tableau feuille 1).

J'ai effectué beaucoup de recherche sur les forums, internet et dans des bouquins mais je n'ai pas trouvé d'exemple suffisament proche de celui-ci pour m'aider! (ou peut-être qu'il y en avait mais dans ce cas je n'ai pas tilté...je programme en visual basic depuis 2 semaines et j'ai encore ud mal!)

merci beauuucoup pour votre aide!! :)

louloutte!
A voir également:

7 réponses

louloutte63
 
oui les données sont exactement les mêmes (ce sont des nombres), mon but est en fait de les "copier/coller" dans un autre tableau dans une autre feuille excel!

j'ai déjà passé beaucoup de temps à essayé de programme avec des boucles et des variables temporaires, mais je tourne en rond et à mon avis je n'ai pas la bonne approche algorithmique du problème!

Merci pour ta réponse! :)
2
Urbanspirit Messages postés 93 Date d'inscription   Statut Membre Dernière intervention   22
 
je ne m'y connais pas très bien

mais les données de ton tableau sont elle de même types?

si ce n'est pas le cas je te conseillerais d'utiliser des structures ce qui te faciliterai la tache

pour la partie programmation pour les transfert de données entre deux tableau il faut que tu créer des variables temporaires pour gardez les données que tu veux déplacer...enfin bon attend que quelqu'un de mieux qualifier que moi affirme ou infirme ce que j'ai écrit ^^
0
Urbanspirit Messages postés 93 Date d'inscription   Statut Membre Dernière intervention   22
 
au niveau de l'algo il me semble que sa ressemble globalement au tri bulle .... en gros ua lieu de classer les données d'un même tableau tu les envoie dans un autre tableau..
'menfin je m'avance peux être un peux trop...

attend qu'un dev' plus doué que moi vienne t'aider ^^


0
louloutte63
 
ok merci quand même! :)

je vais aller voir un exemple de tri bulle alors en attendant d'autres réponses!

++
0

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

Posez votre question
chico95
 
pourquoi ne pas faire un :

For y = 1 To 100 'pour les 100 colonnes
For x = 1 To 20 'pour les 20 lignes
Sheets("Feuil1").Select
ThisWorkbook.Sheets("Feuil1").Cells(x, y).Select
Selection.Copy
Sheets("Feuil2").Select
ThisWorkbook.Sheets("Feuil2").Cells(x + 10, y + 10).Select 'Si les colonnes et lignes de la feuille 2 sont 10 cases plus loin, sinon tu peux refaire une boucle ?! Oo
ActiveSheet.Paste
next y
next x
0
louloutte63
 
ok c'est parfait sa marche! :)

merci beaucoup, sans votre aide j'aurai eu beaucoup de mal!

bonne journée! :)
0
louloutte63
 
par contre j'ai encore une petite question!! (je suis coincé dessus depuis 1 heure et je suis sur que c'est un petit détail de m... mais j'arrive pas à trouver!)

maintenant pour chaque colonne dans la tableau que j'ai obtenu grace à chico (encore merci!:) ), je souhaite comparer tous simplement deux valeurs références situées l'une au dessus de l'autre dans le tableau.

j'ai programmé la macro ci-dessus, mais quand je lance le programme j'ai l'impression que l'incrément de y ne marche pas! (exemple: dans les deux premières comparaison on retrouve les deux cas: plus petit et plus grand, et j'ai quand même le même retour...)

Sub capacidad()

Dim a As Integer
Dim b As Integer
Sheets("feuil2").Select

For y = 4 To 104

a = Feuil2.Cells(22, y).Select
b = Feuil2.Cells(21, y).Select

If a >= b Then
MsgBox ("ATENCION: La capacidad limita de producion es alcanzada en la linea 1 para el dia numero " & (y - 3))

Else

End If

Next y
End Sub


Merci beaucoup pour votre aide! :)
0