Probleme pour faire des références.
Kris41
Messages postés
12
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
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.
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.
A voir également:
- Probleme pour faire des références.
- Excel a rencontré un problème au niveau d'une ou de plusieurs références de formules ✓ - Forum Excel
- Dans le document à télécharger, les références des pièces détachées sont affichées par pays, puis par type de pièces. réorganisez le document pour avoir : les pays dans l'ordre alphabétique : allemagne, espagne, france et italie ; et pour chaque pays, les pièces d'auto, de bateau et de moto dans cet ordre. quelle est la référence de la pièce en ligne 500 ? ✓ - Forum Windows
- Il existe une ou plusieurs références circulaires ✓ - Forum Excel
- Références circulaires entre excel-word - Forum Excel
- Problème référence formule - Forum Excel
1 réponse
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.
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.
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
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.
je n'ai pas trouvé les explications demandées, j'abandonne.
Attend qq'un de plus courageux que moi.
eric