Creation d un tableau a partir de deux autres

  • Initiateur de la discussion Initiateur de la discussion steve1991
  • Date de début Date de début

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 !

steve1991

XLDnaute Nouveau
Bonjour a tous,

je me permets de vous solliciter car je suis coince sur mon probleme deouis un bon moment😕

Je cherche a realiser une macro qui cree un tableau a partir de deux autres, un fix et un variable.

J ai un tableau maitre en page 1 ( devis francais) et un deuxieme en page 2 (Topsolid) qui sera le tableau pilot.

Donc le tableau Topsolid contient en colonne 1 une quantite, en colonne 2 une reference et en colonne 3 une longueur.

Si une reference est dans le tableau Topsolid je voudrais aller chercher et copier la ligne complete contenant cette reference dans le tableau Devis francais pour la coller dans le nouveau tableau page 3. Puis retourner dans la page Topsolid pour copier les informations de longueur et de quantites de cette reference pour les coller dans la nouvelle ligne du tableau en page 3.

Je sais pas si c est tres clair :shock:

J ai essaye de faire le code mais sa ne fonctionne pas :

Sub Button1_Click()



i = 30 //j ai juste besoin de commencer le nouveau tableau a la ligne 30


For r = Sheets("Topsolid").UsedRange.Rows.Count To 1 Step -1 //Pour chercher toutes les references du tableau Topsolid


If Sheets("Topsolid").Cells(r, 1).Value <> 0 Then //Si j ai une quantite alors j ai beoin de cette reference

For x = Count To 190 Step 1 //Pour rechercher la reference dans le tableau devis francais

If Sheets("devis francais").Cells(x, 2).value = Sheets("Topsolid").Cells(r, 2).value Then

Sheets("devis francais").Rows(x).Select
Selection.Copy
Sheets("Sheet3").Select
Cells(i, 1).Select
ActiveSheet.Paste
Sheets("Topsolid").Select
Cells(r, 1).Select
Selection.Copy
Sheets("Sheets3").Select
Cells(i, 5).Select
ActiveSheet.Paste
i = i + 1
End If

Next x


End If

Next r




End Sub

Par avance merci,
Steve
 
Dernière édition:
Re : Creation d un tableau a partir de deux autres

Bonjour Steve et bienvenu, bonjour le forum,

Tu devrais lire la Lien supprimé du forum car malgré tes efforts pour expliquer ton problème un petit fichier exemple aurait été, lui aussi, le bienvenu...
Difficile de t'aider sans lui. Peut-être comme ça :
Code:
Private Sub CommandButton1_Click()
Dim r As Integer 'déclare la variable r (Recherche)
Dim q As Variant 'déclare la variable q (Quantité) / type à adapter
Dim l As Variant 'déclare la variable q (Longueur)/ type à adapter

For r = Sheets("Topsolid").UsedRange.Rows.Count To 1 Step -1
    If Sheets("Topsolid").Cells(r, 1).Value <> 0 Then
        q = Sheets("Topsolid").Cells(r, 1).Value
        l = Sheets("Topsolid").Cells(r, 3).Value
        Set r = Sheets("devis francais").Columns(2).Find(Cells(x, 2), , xlValues, xlWhole)
        If Not r Is Nothing Then
            Rows(r.Row).Copy Sheets("devis francais").Cells(i, 1)
            Rows(r.Row).Copy Sheets("Sheet2").Cells(i, 1)
            Sheets("Sheet2").Range(i, 5).Value = q '(pas sûr de la colonne 5 à adapter)
            Sheets("Sheet2").Range(i, 6).Value = l '(pas sûr de la colonne 6 à adapter)
        End If
    End If
Next r
End Sub
 
Re : Creation d un tableau a partir de deux autres

Bonsoir tout le monde,

J ai trouve une solution a mon probleme en m appuyant sur la solution de Robert ( encore MERCI!), je joins donc un exemple de cette solution.

N etant pas un genie de la programmation VBA le code peu certainement etre ameliore mais il fonctionne donc si sa peu aider...

Cldt,
Steve
 

Pièces jointes

- 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
6
Affichages
734
Retour