Macro excel, association d'élément

Résolu
spirit33 Messages postés 26 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 24 juillet 2009 - 2 mai 2008 à 11:17
spirit33 Messages postés 26 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 24 juillet 2009 - 2 mai 2008 à 15:02
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.

1 réponse

spirit33 Messages postés 26 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 24 juillet 2009
2 mai 2008 à 15:02
c bon le problème est résolu
voici le code pour ce que ça intéresse :

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
               
                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
                              
                Sheets("Alert").Cells(NumLig, 3) = .Cells(Lig, 12)

            End If
        Next
    End With
End Sub

et voila dsl pour le dérangemen t
3
Rejoignez-nous