Repartition de données

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

kolivier

XLDnaute Occasionnel
Bonsoir à tous et merci d'avance a tous ceux qui prendront un peu de temps pour me lire.

j'essaye de faire une macro complexe et la derniére fonction qui semble simple m'echappe totalement.

J'ai 4 feuilles dans le meme classeur, feuil0, feuil1, feuil2, feuil3

Sur la feuil0 je marque dans la cellule

A1 le chiffre 1 et dans la cellule A2 le nombre 10
B1 le chiffre 3 et dans la cellule B2 le nombre 20
C1 le chiffre 3 et dans la cellule C2 le nombre 30

En cliquant sur un bouton il faudrait que le nombre dans la cellule A2 de la feuil0 soit envoyé dans la feuil1 car la cellule A1 de la feuilO est égal à 1, et donc que les nombres présents dans les cellules B2 et C2 se retrouvent respectivement dans les cellules B2 et C2 de la feuil3 cette fois-ci.

En résumé, en cliquant sur un bouton, et fonction du chiffre contenu dans la colonne 1 de la feuil0, les infos prsentes dans la colonne 2 sont réparties dans les feuilles correspondantes.

Et comme je n'arrive pas a le faire , je n'ai malheureusement pas d'exemple a vous poposer.
Merci bcp pour votre patience.
Oliver

P.S Ce post a été aussi mis par erreur dans le salon XLD.
 
Bonsoir à tous
Bonsoir Olivier.

moi j'essayerais un truc du genre :

Sheets('feuil0').Select
D_feuille= [A1] ' tu regardes ou doit aller la cellule
N_feuille= 'feuil' & format(D_feuille) ' tu désignes son nom
Sheets(N_feuille).Select ' tu selectionnes la feuille

pour la manip je pense qu'il faudrait une boucle qui scrute les lignes de la feuille feuil0....

tu en penses quoi..?

A+ Christian
 
Bonsoir olivier, christian, le forum

🙂

Une autre syntaxe possible par boucle :

Sub Bouton1_QuandClic()
Dim i As Integer

For i = 1 To Cells(1, 256).End(xlToLeft).Columns
   
With Sheets('feuil' & Cells(1, i))
        .Range('a' & .Range('a65536').End(xlUp).Row + 1) = Cells(2, i)
   
End With
Next i
End Sub

salut
 
tu as changer le sens de ta demande...!

il faut que tu adaptes en fonction de ta 1ere demande...!
A+ Christian [file name=MiseAjour.zip size=7597]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/MiseAjour.zip[/file]

Message édité par: N_Christian, à: 05/09/2005 22:54
 

Pièces jointes

Je ne comprens pas avez vous un exemple qui marche car j'essaie de comprendre par analogie. Vous avez dis que vous aviez testé la methode de Hervé, je vous serai enormément reconnaissant si vous pouviez m'envoyer l'exemple qui fonctionne, je suis un peu a l'agonie car cela fait plusieurs semaines que mon fichier stagne et je souhaitait le réaliser pour ma liste de naissance de ma fille.
Encore mille merci d'avance
 
re

ca pouvait pas marcher olivier tu n'avais pas rattaché ton bouton à ta macro 🙂

J'ai passé 5 mn à comprendre pourquoi ta macro se lancait pas 🙂

bon voici ton code modifié, ton fichier ne correspond pas à ta demande initiale.

en vba il faut éviter de nommer les feuilles 1,2,3, car on peut confondre l'index de la feuille avec le nom.

Private Sub MISEAJOUR_Click()
Dim i As Integer

'pour i qui va de 2 jusqu'a la derniere cellule non vide de la colonne B
For i = 2 To Range('b65536').End(xlUp).Row
   
'avec la feuille qui portent comme nom la valeur de la cellule cells(ligne, colonne)
   
With Sheets(Cells(i, 2) + 1)
       
'a la premiere cellule vide de la colonne A = valeur de la cellule(ligne, colonne)
        .Range('a' & .Range('a65536').End(xlUp).Row + 1) = Cells(i, 3)
   
'fin du travail avec la feuille
   
End With
'incrementation de i
Next i
End Sub


salut
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
465
Réponses
1
Affichages
344
wDog66
W
  • Résolu(e)
Microsoft 365 DATEDIF
Réponses
11
Affichages
417
Retour