Microsoft 365 Code VBA Envoi contenu tableau Excel par Email

AzakGoun

XLDnaute Nouveau
Bonjour,
Après de longues recherches, je suis arrivé à ce code qui extrait les données de l'onglet WS1 et les colle dans l'onglet WS3 en fonction d'un critère. Ces données extraites seront collées ensuite dans un Email à envoyer. Le problème se situe au niveau du texte qui ne s'insère pas avant le tableau.
Merci pour votre aide.

Sub ExtraireLignes()
Dim ws1, ws2, ws3 As Worksheet
Dim lastRow1, lastRow2, lastRow3 As Long
Dim filterValue As Variant ' Définir comme Variant
Dim i, j As Long
Dim a As Long ' Utiliser Long plutôt que Integer

Set ws1 = ThisWorkbook.Sheets("Base")
Set ws2 = ThisWorkbook.Sheets("Liste")
Set ws3 = ThisWorkbook.Sheets("Données")

lastRow1 = ws1.Cells(ws1.Rows.Count, "A").End(xlUp).Row
lastRow2 = ws2.Cells(ws2.Rows.Count, "A").End(xlUp).Row
lastRow3 = ws3.Cells(ws3.Rows.Count, "A").End(xlUp).Row

a = 1

Do Until a = lastRow2
filterValue = ws2.Range("A" & a).Value
For i = 1 To lastRow1 + 1
If ws1.Cells(i, "C").Value = filterValue Then
j = ws3.Cells(ws3.Rows.Count, "A").End(xlUp).Row + 1
ws1.Rows(i).Copy Destination:=ws3.Rows(j)
End If
Next i
a = a + 1 ' Incrémentation de la variable de boucle
ws3.Select
MsgBox ("Continuer")
Call envoi_mail
ws3.Rows("2:" & ws3.Rows.Count).ClearContents
ws3.Rows("2:" & ws3.Rows.Count).ClearFormats
Loop
End Sub
 

Phil69970

XLDnaute Barbatruc
Bonjour @AzakGoun bienvenu sur XLD

Quelques remarques :

1)Utilise la balise </> à droite de l’icône GIF pour le code c'est plus lisible.
1711321020344.png


2) J'ai pas vu ton fichier

Bonne lecture
 

Discussions similaires

Réponses
11
Affichages
292
Réponses
2
Affichages
236
Réponses
3
Affichages
99

Statistiques des forums

Discussions
312 213
Messages
2 086 302
Membres
103 174
dernier inscrit
OBUTT