Macro remplacer une série de mots par des sigles (plage donnée)
TOT127
Messages postés
898
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
un fichier: http://www.cjoint.com/c/FKlmuc5AAjX
J'ai un fichier de 2 feuilles, dans chacune la dernière colonne comporte des États d'un pays (New York Arkansas, etc). je dois remplacer ça par les abréviations, pour alléger mon fichier (qui est énorme, 120Mo). Puis quand j'aurai access je le mettrai dedans, semaine prochaine.
J'ai excel 2007 et un PC.
Je veux, à chaque fois, dans la colonne C:C de F1 et F2 remplacer les états par les abréviations (j'ai une liste). Je suis débutant en VBA,et pour l'instant je ne réussis qu'à faire de petits exercices, et je n'ai pas réussi à faire une macro, même en regardant des macros à modifier sur google.
Je dois limiter le remplacement aux plages, car je veux pas que "New York Restaurant" devienne "NY Restaurant" (ça serait un prb pour le matching avec une autre base de données.....), et le nombre d'items à remplacer est de 30 (donc faudrait tous les écrire dans la macro).
Je précise - vous allez hurler - que chaque feuille fait 900.000 lignes.
Merci bcp!
un fichier: http://www.cjoint.com/c/FKlmuc5AAjX
J'ai un fichier de 2 feuilles, dans chacune la dernière colonne comporte des États d'un pays (New York Arkansas, etc). je dois remplacer ça par les abréviations, pour alléger mon fichier (qui est énorme, 120Mo). Puis quand j'aurai access je le mettrai dedans, semaine prochaine.
J'ai excel 2007 et un PC.
Je veux, à chaque fois, dans la colonne C:C de F1 et F2 remplacer les états par les abréviations (j'ai une liste). Je suis débutant en VBA,et pour l'instant je ne réussis qu'à faire de petits exercices, et je n'ai pas réussi à faire une macro, même en regardant des macros à modifier sur google.
Je dois limiter le remplacement aux plages, car je veux pas que "New York Restaurant" devienne "NY Restaurant" (ça serait un prb pour le matching avec une autre base de données.....), et le nombre d'items à remplacer est de 30 (donc faudrait tous les écrire dans la macro).
Je précise - vous allez hurler - que chaque feuille fait 900.000 lignes.
Merci bcp!
A voir également:
- Macro remplacer une série de mots par des sigles (plage donnée)
- Remplacer disque dur par ssd - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Remplacant de coco - Accueil - Réseaux sociaux
- Remplacer un mot par un autre word - Guide
- Trousseau mot de passe iphone - Guide
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
Suggestion :
Cela va faire le boulot (pour CA & TX) sur la troisième colonne de toutes tes feuilles, jusqu'à rencontrer une cellule vide.
Option Explicit Sub states() Dim f As Worksheet Dim li As Long Dim etat As String Dim abbrev As String For Each f In ThisWorkbook.Worksheets li = 1 Do etat = Cells(li, 3) abbrev = "" Select Case etat Case "CALIFORNIE": abbrev = "CA" Case "TEXAS": abbrev = "TX" End Select If abbrev <> "" Then Cells(li, 3) = abbrev End If li = li + 1 Loop While Cells(li, 3) <> "" Next End Sub
Cela va faire le boulot (pour CA & TX) sur la troisième colonne de toutes tes feuilles, jusqu'à rencontrer une cellule vide.
ce code prévient quand il a fini chaque feuille :