• Initiateur de la discussion Initiateur de la discussion manuBX
  • Date de début Date de début

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 !

manuBX

XLDnaute Occasionnel
Bonjour
a partir de ce fichier exemple
peut on m indiquer l utilisation de " application match "

il s agit de copier dans feuil1 sous D1 qui est une date l équivalent de la feuil2 sous la date corespondant
si je change D1 la recherche se fait pour trouver la date et copier ce qui est dessous
si la date n existe pas inscrire "pas date"

merci d avance
 

Pièces jointes

Re : Application match

Bonsoir à tous
quoi modifier dans cet macro pour avoir sous D1 à D5 feuill1 la copie des lignes corespondant apres D15 à 29 feuil3(2)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x
If Target.Address = "$D$1" And Target.Count = 1 Then
[D2😀500].Clear '500 arbitraire
If Not IsEmpty(Target) Then
With [Feuil2]
On Error GoTo fin
x = Application.Match([D1], .Columns(4), 0)
.Range(.Cells(x, 5), .Cells(x, 100)).Copy '100 arbitraire
Range("D2").PasteSpecial Transpose:=True
Application.CutCopyMode = False
[D2].Select
End With
End If
End If
Exit Sub

fin:
Range("D2") = "Pas de date"
End Sub
Merci d avance
A+
 

Pièces jointes

Re : Application match

Bonsoir à tous
je vais essayer de me faire comprendre et de rectifier mes erreurs
a partir de cet macro serait il possible d avoir en feuil1 sous D1 E1 F1G1H1(date) la copie de la ligne correspondant à l équivalent de la colonne4 (date)
ou si vous préférer la macro fonctionne pour D1 et il me faudrait aussi E1F1G1H1 avec les même éléments de la Feuil2
En espérant avoir été plus clair
Merci d avance
A+
If Target.Address = "$D$1" And Target.Count = 1 Then 'E1F1G1H1 aussi en plus
[D2😀500].Clear '500 arbitraire
If Not IsEmpty(Target) Then
With [Feuil2]
On Error GoTo fin
x = Application.Match([D1], .Columns(4), 0) ' ???????
.Range(.Cells(x, 5), .Cells(x, 100)).Copy ' ?????
Range("D2").PasteSpecial Transpose:=True' ????????
Application.CutCopyMode = False
[D2].Select
 
Re : Application match

Bonsoir,
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x
If Not Intersect(Target, Range("D1:H1")) Is Nothing And Target.Count = 1 Then
Range(Target.Offset(1), Target.Offset(500)).Clear '500 arbitraire
If Not IsEmpty(Target) Then
    With [Feuil2]
        On Error GoTo fin
        x = Application.Match(Target, .Columns(4), 0)
        .Range(.Cells(x, 5), .Cells(x, 100)).Copy '100 arbitraire
        Target.Offset(1).PasteSpecial Transpose:=True
        Application.CutCopyMode = False
        Target.Offset(1).Select
    End With
End If
End If
Exit Sub

fin:
Target.Offset(1) = "Pas de date"
End Sub
A+
kjin
 
- 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

Discussions similaires

  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
458
Réponses
20
Affichages
1 K
Retour