Probleme pour faire des références.

Fermé
Kris41 Messages postés 12 Date d'inscription vendredi 3 juillet 2009 Statut Membre Dernière intervention 12 juillet 2017 - 10 juil. 2017 à 20:25
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 - 12 juil. 2017 à 19:56
Bonjour a tous,

Je fais appel à tout les pro d'excel en espérant avoir un peu d'aide. J'ai un classeur qui contient deux feuilles. J'ai inséré dans chaque feuille un tableau. Je souhaiterais copier les données du tableau de la première feuille sur la deuxième feuille quand celle-ci atteignent une certaine condition.

Voici le code que j'ai fait jusqu'à maintenant mais je ne m'en sort pas.

Private Sub CommandButton1_Click()

Dim DernLign As Long, i&, LignCible
Dim Table1, Table2 As ListObjects

Set Table1 = ThisWorkbook.Worksheets("VALIDATION BC").ListObjects("TableauValidationBC")

With Table1

DernLign = Range("Table1[A]" & Rows.Count).End(xlUp).Row
LignCible = DernLign + 1

For i = 6 To DernLign
If Range("O" & i) <> "" Then

Range("N° BC" & i).Copy Sheets("EDITION BC").Range("TableauEditionBC[N° BC]" & LignCible)
.Range("Libellé bon de commande" & i).Copy Sheets("EDITION BC").Range("TableauEditionBC[Libellé bon de commande]" & LignCible)
.Range("Date du BC" & i).Copy Sheets("EDITION BC").Range("TableauEditionBC[Date du BC]" & LignCible)

.Range("C" & i).Copy Sheets("EDITION BC").Range("A" & LignCible)
.Range("D" & i).Copy Sheets("EDITION BC").Range("B" & LignCible)
.Range("O" & i).Copy Sheets("EDITION BC").Range("C" & LignCible)
.Range("C" & i).Copy Sheets("EDITION BC").Range("A" & LignCible)
.Range("D" & i).Copy Sheets("EDITION BC").Range("B" & LignCible)
.Range("O" & i).Copy Sheets("EDITION BC").Range("C" & LignCible)

LignCible = LignCible + 1

Sheets("Edition BC").Activate

End If
Next

End With
End Sub

Je bloque sur DernLign = .

J'espère être assez clair sur ce que je veux obtenir. Et surtout avoir de l'aide à comprendre ce que je fais mal.

Cordialement.

1 réponse

Kris41 Messages postés 12 Date d'inscription vendredi 3 juillet 2009 Statut Membre Dernière intervention 12 juillet 2017
11 juil. 2017 à 20:02
Bonsoir à tous,

J'ai un peu progressé dans ce que je voulais faire mais je n'obtiens pas encore l'effet désiré, voici le code :

[code]
Private Sub CommandButton1_Click()

Dim TableauValidationBC() As String
Dim l As Integer
Dim DernLign As Long, i&, LignCible
Dim Table1, Table2 As ListObjects

Set Table1 = ThisWorkbook.Worksheets("VALIDATION BC").ListObjects("TableauValidationBC")

With Table1

DernLign = Range("A" & Rows.Count).End(xlUp).Row
LignCible = 6

For i = 6 To DernLign
If Range("N" & i) = "OUI" Then

Range("C" & i).Copy Sheets("EDITION BC").Range("A" & LignCible)
Range("D" & i).Copy Sheets("EDITION BC").Range("B" & LignCible)
Range("A" & i).Copy Sheets("SYNTHESE EN COURS").Range("A" & LignCible)
Range("B" & i).Copy Sheets("SYNTHESE EN COURS").Range("B" & LignCible)
Range("C" & i).Copy Sheets("SYNTHESE EN COURS").Range("C" & LignCible)
Range("D" & i).Copy Sheets("SYNTHESE EN COURS").Range("D" & LignCible)
Range("E" & i).Copy Sheets("SYNTHESE EN COURS").Range("E" & LignCible)
Range("F" & i).Copy Sheets("SYNTHESE EN COURS").Range("F" & LignCible)
Range("G" & i).Copy Sheets("SYNTHESE EN COURS").Range("G" & LignCible)
Range("H" & i).Copy Sheets("SYNTHESE EN COURS").Range("H" & LignCible)
Range("I" & i).Copy Sheets("SYNTHESE EN COURS").Range("I" & LignCible)
Range("J" & i).Copy Sheets("SYNTHESE EN COURS").Range("J" & LignCible)
Range("K" & i).Copy Sheets("SYNTHESE EN COURS").Range("K" & LignCible)
Range("L" & i).Copy Sheets("SYNTHESE EN COURS").Range("L" & LignCible)
Range("M" & i).Copy Sheets("SYNTHESE EN COURS").Range("M" & LignCible)
LignCible = LignCible + 1

Range("A" & i).EntireRow.Delete

Sheets("Edition BC").Activate

End If
Next

End With

l = 39

ReDim TableauValidationBC(l)

End Sub
[Code]

J'espère vraiment arriver à corriger les petits problème que je rencontre, car actuellement il me copie tout les données sans exception dans la feuille "synthese en cours", et oublie certaine données en copiant dans la feuille "Edition BC". Et toujours pas de référence dans mes tableaux.

Si vous avez des suggestion, je suis preneur.

Cordialement.
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
Modifié le 11 juil. 2017 à 23:01
Bonjour,

26h et 0 réponse...

quand celle-ci atteignent une certaine condition...
oublie certaine données...
Tu penses en parler en détail bientôt ou on a qu'un code que tu dis mauvais pour deviner ?
D'autre part pas trop envie de lire ton code. Indente ton code et utilise les balises 'code' (icone <>) que ce soit plus agréable et plus lisible.
Et tu peux utiliser cjoint.com pour déposer un fichier de travail de qq lignes (avec tous les cas possibles), avec en plus le résultat voulu.

Là tu donneras sans doute envie à plus de personne de se pencher dessus
eric
0
Kris41 Messages postés 12 Date d'inscription vendredi 3 juillet 2009 Statut Membre Dernière intervention 12 juillet 2017 > eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024
12 juil. 2017 à 19:51
Oui c'est vrai désolé je ne trouvé pas comment mettre mon document pour une lecture plus facile.

voici le lien :
https://www.cjoint.com/c/GGmrT7QL5br

le fichier est pratiquement complet, j'ai juste à rajouter les boutons de déclenchement de code vba. Après c'est vrai que je ne demande pas tout car j'estime devoir chercher la solution aussi.
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
12 juil. 2017 à 19:56
pas bonjour non plus,

je n'ai pas trouvé les explications demandées, j'abandonne.
Attend qq'un de plus courageux que moi.
eric
0