Macro (mac si possible): couper liste
Résolu
TOT127
Messages postés
898
Date d'inscription
Statut
Membre
Dernière intervention
-
Aliboron Martin Messages postés 3560 Date d'inscription Statut Contributeur Dernière intervention -
Aliboron Martin Messages postés 3560 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je cherche un moyen automatique de passer d'un fichier de 15K lignes (des emails en colonne A) à 60 fichiers de 250 lignes (sans doulbons, 1 mail 1 fois, en tout). Je dois faire un envoie d'emails automatiques mais ma liste de 15K est considérée comme spam...
Je voudrais éviter de le faire à la main. Une idée ? merci!
Je cherche un moyen automatique de passer d'un fichier de 15K lignes (des emails en colonne A) à 60 fichiers de 250 lignes (sans doulbons, 1 mail 1 fois, en tout). Je dois faire un envoie d'emails automatiques mais ma liste de 15K est considérée comme spam...
Je voudrais éviter de le faire à la main. Une idée ? merci!
A voir également:
- Macro (mac si possible): couper liste
- Adresse mac - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- @ Sur mac - Guide
- Nettoyer son mac - Guide
- Temperature mac - Guide
3 réponses
Une petite macro en VBA qui devrait permettre de faire ça assez facilement :
Il faudra évidemment vérifier à adapter le nom du classeur initial (ici "MaListe.xlsx") et la feuille sur laquelle se trouvent les données (par défaut "Feuil1")
Sub Decoupage()
j = 1
For i = 15000 To 0 Step -250
Workbooks("MaListe.xlsx").Worksheets("Feuil1").Range("A1:A5").Cut
Workbooks.Add
ActiveSheet.Paste
ActiveWorkbook.SaveAs FileName:="ListeCourte " & j & ".xlsx"
ActiveWorkbook.Close
Workbooks("MaListe.xlsm").Worksheets("Feuil1").Range("A1:A5").Delete
j = j + 1
Next i
End Sub
Il faudra évidemment vérifier à adapter le nom du classeur initial (ici "MaListe.xlsx") et la feuille sur laquelle se trouvent les données (par défaut "Feuil1")
code utilisé:
Sub Decoupage()
j = 1
For i = 15000 To 0 Step -250
Workbooks("MaListe.xlsx").Worksheets("Feuil1").Range("A1:A250").Cut
Workbooks.Add
ActiveSheet.Paste
ActiveWorkbook.SaveAs FileName:="ListeCourte " & j & ".xlsx"
ActiveWorkbook.Close
Workbooks("MaListe.xlsx").Worksheets("Feuil1").Range("A1:A250").Delete
j = j + 1
Next i
End Sub
Je vois d'ailleurs que j'ai aussi oublié de corriger l'extension du nom "MaListe.xlsm" en "MaListe.xlsx" la deuxième fois. Probablement est-ce d'ailleurs là qu'est l'origine de l'erreur (ça a toutes les chances de bloquer)...
Pour cette erreur, sinon, il faudrait en dire plus sur le contexte. Déjà la version et le niveau de mise à jour d'Excel ainsi que la version de Mac OS X concernée. Et ensuite à quel "moment" survient l'erreur, quelle est la ligne surlignée en jaune lorsque tu cliques sur "Déboguer",...
Dans le script proposé, il y a un truc qui m'étonne et qui expliquerait bien la liste de 5 noms obtenue, c'est le .
J'aurais mis la taille de la liste souhaitée soit 250.
À essayer
Ritchi