Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 copier automatique des donnes en fonction d'un critère

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 !

ben soumare

XLDnaute Nouveau
Bonjour
j'ai deux tableau qui contient ces donnees suivant:

DATESCASESDESCRIPTIONOPERATIONSUNIVERSND/NCLIPRENOM ET NOMADRESSESCORDONNEES GPSTELEPHONESE-MAILN° CIN/PASSEPORTDATE DE DELIVRANCEOFFRES ACTUELLESNOUVELLES OFFRESDATES CALL 2RETOUR CALL2DATES TRANSMISSION CONTRATPROMOTEURSRETOUR CONTRATDATES RETOUR CONTRATNUM DDEETAT DDEDATES VALCOMMENTAIRES
25/01/2023CASES 658Y0GBPYNOUVEL ABONNEMENTFIBRE477IAUDREKEURGUI MAXOKABDOU AZIZ GUEYERECUVA

je voudrais que quand l'ETAT de la demande est en VA (colonne en rouge ) que les infos soit automatiquement copier dans le tableau qui est en bas.



NCLI/ NDN° DEMANDEOFFRESOPERATIONUNIVERSDATES VALOGIN_AGTCANAL DE RECEPTION
 
Solution
Avouez que vu de l'extérieur, c'est impossible à deviner. 😉


En PJ un essai avec dans chaque feuille MQTxx :
VB:
Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fin2: If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [W2:W1000]) Is Nothing And Target = "VA" Then
         Application.ScreenUpdating = False
         Transfert "MQT AUTRES CANAUX", Target.Row
    End If
Fin2:
Application.ScreenUpdating = True
End Sub
et en module :
Code:
Sub Transfert(NomFeuille$, L%)
    Set F = Sheets(NomFeuille)
    With Sheets("VA")
        DL = 1 + .[A65500].End(xlUp).Row
        .Cells(DL, "A") = F.Cells(L, "F")       ' NCLI/ND
        .Cells(DL, "B") = F.Cells(L, "V")       ' N° demande=Num DDE
        .Cells(DL, "C") =...
Bonjour Ben soumare, et bienvenu sur XLD,
N'avez vous pas un petit fichier test, ce serait beaucoup plus simple.
On peux le faire simplement en VBA. Acceptez vous une approche VBA ?
 
Bonjour Ben soumare, et bienvenu sur XLD,
N'avez vous pas un petit fichier test, ce serait beaucoup plus simple.
On peux le faire simplement en VBA. Acceptez vous une approche VBA ?
Bonjour
bien sur je met le tableau

je voudrai que quand l'état de la demande passe en VA colonne "W" dans les différents feuilles en orange (MQT KIBARU et MQT AUTRES CANAUX) que les donnés soit soit directement copier dans la feuille VA en bleu
 

Pièces jointes

Re,
Vos feuilles MQT xx comportent ces colonnes :
Regarde la pièce jointe 1161696
Le feuille VA celles ci :
Regarde la pièce jointe 1161697
Donc question :
On colle quoi où ? Aucune colonne de MQT va dans VA.

Re,
Vos feuilles MQT xx comportent ces colonnes :
Regarde la pièce jointe 1161696
Le feuille VA celles ci :
Regarde la pièce jointe 1161697
Donc question :
On colle quoi où ? Aucune colonne de MQT va dans VA.

les informations qui se trouve dans les colonnes
NCLI/ NDN° DEMANDEOFFRESOPERATIONUNIVERSDATES VALOGIN_AGTCANAL DE RECEPTION
qui sont dans les deux MQT soit coller dans le tableau qui se trouve dans feuille VA quand ETAT DDE = VA
 
Inutile de vous répéter. Ca, j'avais compris, mais :
1- Que met on dans DatesVA : DatesVal ou Dates ?
2- Que met on dans Login_AGT ?
3- Que met on dans Canal de réception ?
4- Que met on dans N° Demande ? N° CIN/PASSEPORT ou Num DDE ?

Essayez au moins que chaque colonne des feuilles AGT ait le même titre qu'une des colonnes de VA. ce sera plus simple pour tout le monde.
 
 
Avouez que vu de l'extérieur, c'est impossible à deviner. 😉


En PJ un essai avec dans chaque feuille MQTxx :
VB:
Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fin2: If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [W2:W1000]) Is Nothing And Target = "VA" Then
         Application.ScreenUpdating = False
         Transfert "MQT AUTRES CANAUX", Target.Row
    End If
Fin2:
Application.ScreenUpdating = True
End Sub
et en module :
Code:
Sub Transfert(NomFeuille$, L%)
    Set F = Sheets(NomFeuille)
    With Sheets("VA")
        DL = 1 + .[A65500].End(xlUp).Row
        .Cells(DL, "A") = F.Cells(L, "F")       ' NCLI/ND
        .Cells(DL, "B") = F.Cells(L, "V")       ' N° demande=Num DDE
        .Cells(DL, "C") = F.Cells(L, "O")       ' Nouvelles Offres
        .Cells(DL, "D") = F.Cells(L, "D")       ' Opérations
        .Cells(DL, "E") = F.Cells(L, "E")       ' Univers
        .Cells(DL, "F") = F.Cells(L, "X")       ' Date VA
        .Cells(DL, "H") = Mid(NomFeuille, 5)    ' Canal de réception
    End With
End Sub

A noter que j'ai supprimée la Feuil2 pour essai. Car la feuille 2 ralentit énormément les macros. Je ne sais pas pourquoi mais je pense que c'est à cause des 150 petits dessins de calendrier.
Que représente ces petits dessins ? Il doit être possible de pointer es jours sans utiliser d'icones, comme une MFC par exemple.
 

Pièces jointes

Dernière édition:

c'est vrai que c'est pas évident 🙂

j'ai essayer de remplire mais le copie ne passe tjr pas
en passant je suis pas trop VBA 😅
 
Essayez !
Vous entrez une ligne dans un tableau, vous mettez VA en colonne W .... et vous regardez la feuille VA, la ligne y est déjà transférée.
( Mais il faut penser à valider les macros si ce n'est pas encore fait sur votre PC )
 
- 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
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…