Bonjour tout le monde,
Je suis débutant sur la programmation Excel.
J'ai un petit problème sur VBA depuis pas mal de temps que je souhaiterai résoudre.
Sur mon fichier Excel, dans la première page appelée "distributeurs", j'ai créé un filtre manuel dans l'onglet "donnée" d'Excel 2007.
Dans un premier temps, à partir de ce filtre, je souhaiterai avec une macro sélectionner uniquement les données affichées à l'écran par le filtre et les copier. J'ai déja essayé avec la fonction suivante:
Code :
- "For Each cell In ActiveSheet.AutoFilter.Range.SpecialCells(xlCellTypeVisible)"
|
mais cela n'a pas fonctionné et à pris l'ensemble des données du tableur Excel y compris celles qui n'entraient pas dans le filtre.
Ensuite avec les adresses Internet sélectionnées et copiées, j'ai l'intention de faire un mailing.
Voici ce que j'ai réalisé, je crois que c'est correct:
Code :
- "Dim Ol As New Outlook.Application
- Dim Olmail As MailItem
- Dim CurrFile As String
- Dim Adresse As String
- Set Ol = New Outlook.Application
- Set Olmail = Ol.CreateItem(olMailItem)
- Adresse = ""
- For i = 1 To 65536 Step 1
- Range("J3", ActiveCell).Select
- 'For Each cell Copy LC(+9)
- Adresse = Adresse & " ; " & Cells(i, 18).Value & " ; "
- Next i
- With Olmail
- .To = Adresse
- .Subject = ""
- .Body = ""
- .Display '.Send
- End With
|
Si quelqu'un pouvait m'aider pour sélectionner les cellules filtrées et réussir à les copier également, je lui en serai reconnaissant.
Merci d'avance,
David
Message édité par daviddennison89 le 18-08-2008 à 11:46:41