Macro excel, association d'élément

Résolu
Bonjour,

Voila j'ai un petit problème,
J'ai deux parties d'un tableau (ces deux parties contiennent des noms et des dates) que je récupère dans un autre et qu'ensuite je copy dans une autre feuille.
voila ma questions :
comment peut-on associer les noms et les dates ensemble comme dans l'autre tableau.

voici le code :

Sub filtre()
Dim Lig As Long
Dim Col As String
Dim NbrLig As Long
Dim NumLig As Long

Sheets("Alert").Activate ' feuille de destination

Col = "i" ' colonne données non vides à tester'
NumLig = 2 ' alors là ca doit etre le N° de la 1er ligne de données en comptant la ligne 1 = 0 .... ? '
With Sheets("PAR CENTRE") ' feuille source'
NbrLig = .Cells(65536, Col).End(xlUp).Row
For Lig = 1 To NbrLig
If .Cells(Lig, 4).Value <> "" Then
.Cells(Lig, 4).Copy

Sheets("Alert").Cells(NumLig, 2).Insert Shift:=xlDown 'ici pour insérer ou .Paste pour coller'
End If
If IsDate(.Cells(Lig, 12).Value) Then
.Cells(Lig, 12).Copy

Sheets("Alert").Cells(NumLig, 3).Insert Shift:=xlDown 'ici pour insérer ou .Paste pour coller'
End If
Next
End With

en vous remerciant pour votre aide.
Configuration: Windows XP
Firefox 2.0

3 réponses

  1. c bon g trouver j'avait un problème de format dans ma cellule

    merci.
    0
    1. merci pour ta réponse
      le code marche pour l'association mais il me change mes données date en chiffre comme 35968 c bizar.
      tu n'aurais une solution.
      0
      1. Contributeur
        bonjour

        essaies avec ces modifications commentées
        Sub filtre()
        Dim Lig As Long
        Dim Col As String
        Dim NbrLig As Long
        Dim NumLig As Long
        
        Sheets("Alert").Activate ' feuille de destination
        
        Col = "I" ' colonne données non vides à tester' en majuscule !!!
        NumLig = 2 ' alors là ca doit etre le N° de la 1er ligne de données en comptant la ligne 1 = 0 .... ? '
        With Sheets("PAR CENTRE") ' feuille source'
        NbrLig = .Cells(65536, Col).End(xlUp).Row
        For Lig = 1 To NbrLig
        If .Cells(Lig, 4).Value <> "" Then
        '.Cells(Lig, 4).Copy inutile
        
        Sheets("Alert").Cells(NumLig, 2).Resize(1, 2).Insert Shift:=xlDown
                ' les 2 colonnes sont décalées pour rester cohérent
        Sheets("Alert").Cells(NumLig, 2) = .Cells(Lig, 4) 
        End If
        If IsDate(.Cells(Lig, 12).Value) Then
        '.Cells(Lig, 12).Copy inutile
        
        
        'Sheets("Alert").Cells(NumLig, 3).Insert Shift:=xlDown ' inutile
        
        Sheets("Alert").Cells(NumLig, 3) = .Cells(Lig, 12)
        End If
        Next Lig
        End With
        End Sub
        1