voila,
http://cjoint.com/?fvqK6k3SOB
isabelle
marc a écrit :Bonjour Isabelle
Lorsque je fais le test de la macro sur un de mes fichiers, rien ne se passe. Pas de message d'erreur, rien du tout...
merci de ton aide
Marc
"isabelle" a écrit dans le message de news:bonjour Marc,
j'ai mis le résultat dans la cellule voisine de droite, c.Offset(0, 1) = x
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
If Mid(c, i, 1) <> " " Then
x = Mid(c, i, 1) & x
Else
Exit For
End If
Next
c.Offset(0, 1) = x
x = ""
Next
End Sub
isabelle
marc a écrit :Bonjour
J'aimerais être capable de sortir le texte à partir de la droite jusqu'à un espace
exemple:
A1= Fred Caillou Conseiller aux ventes, HANNOVER NIEDERSACHSEN GERMANY
J'aimerais avoir en B1
B1= Germany
Le texte est déjà importé en excel. Alors j'aimerais avoir une solution en VBA, mais si je sais qu'on peut le faire via une
formule.
La macro devrait s'exécuter sur les cellules sélectionnés car chaque fichier n'ont pas le même nombre de ligne.
Merci de votre aide
Marc
voila,
http://cjoint.com/?fvqK6k3SOB
isabelle
marc a écrit :
Bonjour Isabelle
Lorsque je fais le test de la macro sur un de mes fichiers, rien ne se passe. Pas de message d'erreur, rien du tout...
merci de ton aide
Marc
"isabelle" <i@v> a écrit dans le message de news: Owiqv5h2JHA.1864@TK2MSFTNGP02.phx.gbl...
bonjour Marc,
j'ai mis le résultat dans la cellule voisine de droite, c.Offset(0, 1) = x
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
If Mid(c, i, 1) <> " " Then
x = Mid(c, i, 1) & x
Else
Exit For
End If
Next
c.Offset(0, 1) = x
x = ""
Next
End Sub
isabelle
marc a écrit :
Bonjour
J'aimerais être capable de sortir le texte à partir de la droite jusqu'à un espace
exemple:
A1= Fred Caillou Conseiller aux ventes, HANNOVER NIEDERSACHSEN GERMANY
J'aimerais avoir en B1
B1= Germany
Le texte est déjà importé en excel. Alors j'aimerais avoir une solution en VBA, mais si je sais qu'on peut le faire via une
formule.
La macro devrait s'exécuter sur les cellules sélectionnés car chaque fichier n'ont pas le même nombre de ligne.
Merci de votre aide
Marc
voila,
http://cjoint.com/?fvqK6k3SOB
isabelle
marc a écrit :Bonjour Isabelle
Lorsque je fais le test de la macro sur un de mes fichiers, rien ne se passe. Pas de message d'erreur, rien du tout...
merci de ton aide
Marc
"isabelle" a écrit dans le message de news:bonjour Marc,
j'ai mis le résultat dans la cellule voisine de droite, c.Offset(0, 1) = x
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
If Mid(c, i, 1) <> " " Then
x = Mid(c, i, 1) & x
Else
Exit For
End If
Next
c.Offset(0, 1) = x
x = ""
Next
End Sub
isabelle
marc a écrit :Bonjour
J'aimerais être capable de sortir le texte à partir de la droite jusqu'à un espace
exemple:
A1= Fred Caillou Conseiller aux ventes, HANNOVER NIEDERSACHSEN GERMANY
J'aimerais avoir en B1
B1= Germany
Le texte est déjà importé en excel. Alors j'aimerais avoir une solution en VBA, mais si je sais qu'on peut le faire via une
formule.
La macro devrait s'exécuter sur les cellules sélectionnés car chaque fichier n'ont pas le même nombre de ligne.
Merci de votre aide
Marc
Ou plus généralement, en supposant que tu sélectionnes
tes textes sur une colonne :
Sub villes_pays()
For Each texte In Selection
L = Len(texte)
For i = L To 1 Step -1
If Mid(texte, i, 1) = Chr(32) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(texte, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
texte.Offset(0, 1) = Trim(Mid(texte, n + 1, m - n - 1))
'Pays
texte.Offset(0, 2) = Mid(texte, m + 1)
Next texte
End Sub
Serge
Ou plus généralement, en supposant que tu sélectionnes
tes textes sur une colonne :
Sub villes_pays()
For Each texte In Selection
L = Len(texte)
For i = L To 1 Step -1
If Mid(texte, i, 1) = Chr(32) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(texte, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
texte.Offset(0, 1) = Trim(Mid(texte, n + 1, m - n - 1))
'Pays
texte.Offset(0, 2) = Mid(texte, m + 1)
Next texte
End Sub
Serge
Ou plus généralement, en supposant que tu sélectionnes
tes textes sur une colonne :
Sub villes_pays()
For Each texte In Selection
L = Len(texte)
For i = L To 1 Step -1
If Mid(texte, i, 1) = Chr(32) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(texte, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
texte.Offset(0, 1) = Trim(Mid(texte, n + 1, m - n - 1))
'Pays
texte.Offset(0, 2) = Mid(texte, m + 1)
Next texte
End Sub
Serge
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" a écrit dans le message de news:
O9R$bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" <i@v> a écrit dans le message de news:
O9R$Rli2JHA.5896@TK2MSFTNGP02.phx.gbl...
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" a écrit dans le message de news:
O9R$bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Isabelle, explique-moi le Chr(160) SVP.
Cette macro ne fonctionne pas si je l'utilise sur le document de Marc
mais si je réécris ses textes, ça fonctionne !
Sub villes_pays()
For Each c In Selection
t = Trim(c)
L = Len(t)
For i = L To 1 Step -1
If Mid(t, i, 1) = Chr(32) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(t, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
c.Offset(0, 1) = Trim(Mid(t, n + 1, m - n - 1))
'Pays
c.Offset(0, 2) = Mid(t, m + 1)
Next c
End Sub
"isabelle" a écrit dans le message de news:
O9R$bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Isabelle, explique-moi le Chr(160) SVP.
Cette macro ne fonctionne pas si je l'utilise sur le document de Marc
mais si je réécris ses textes, ça fonctionne !
Sub villes_pays()
For Each c In Selection
t = Trim(c)
L = Len(t)
For i = L To 1 Step -1
If Mid(t, i, 1) = Chr(32) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(t, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
c.Offset(0, 1) = Trim(Mid(t, n + 1, m - n - 1))
'Pays
c.Offset(0, 2) = Mid(t, m + 1)
Next c
End Sub
"isabelle" <i@v> a écrit dans le message de news:
O9R$Rli2JHA.5896@TK2MSFTNGP02.phx.gbl...
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Isabelle, explique-moi le Chr(160) SVP.
Cette macro ne fonctionne pas si je l'utilise sur le document de Marc
mais si je réécris ses textes, ça fonctionne !
Sub villes_pays()
For Each c In Selection
t = Trim(c)
L = Len(t)
For i = L To 1 Step -1
If Mid(t, i, 1) = Chr(32) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(t, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
c.Offset(0, 1) = Trim(Mid(t, n + 1, m - n - 1))
'Pays
c.Offset(0, 2) = Mid(t, m + 1)
Next c
End Sub
"isabelle" a écrit dans le message de news:
O9R$bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas
aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Salut Marc,
En remplaçant Chr(32) par Chr(160), ça semble correct.
Est-ce bien le cas ?
Sub villes_pays()
For Each c In Selection
t = Trim(c)
L = Len(t)
For i = L To 1 Step -1
If Mid(t, i, 1) = Chr(160) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(t, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
c.Offset(0, 1) = Trim(Mid(t, n + 1, m - n - 1))
'Pays
c.Offset(0, 2) = Mid(t, m + 1)
Next c
End Sub
Serge
"marc" a écrit dans le message de news:Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" a écrit dans le message de news: O9R$bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Salut Marc,
En remplaçant Chr(32) par Chr(160), ça semble correct.
Est-ce bien le cas ?
Sub villes_pays()
For Each c In Selection
t = Trim(c)
L = Len(t)
For i = L To 1 Step -1
If Mid(t, i, 1) = Chr(160) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(t, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
c.Offset(0, 1) = Trim(Mid(t, n + 1, m - n - 1))
'Pays
c.Offset(0, 2) = Mid(t, m + 1)
Next c
End Sub
Serge
"marc" <test@test.com> a écrit dans le message de news: Om8fsqi2JHA.6004@TK2MSFTNGP02.phx.gbl...
Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" <i@v> a écrit dans le message de news: O9R$Rli2JHA.5896@TK2MSFTNGP02.phx.gbl...
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Salut Marc,
En remplaçant Chr(32) par Chr(160), ça semble correct.
Est-ce bien le cas ?
Sub villes_pays()
For Each c In Selection
t = Trim(c)
L = Len(t)
For i = L To 1 Step -1
If Mid(t, i, 1) = Chr(160) Then
m = i
Exit For
End If
Next i
For i = L To 1 Step -1
If Mid(t, i, 1) = "," Then
n = i
Exit For
End If
Next i
'Ville
c.Offset(0, 1) = Trim(Mid(t, n + 1, m - n - 1))
'Pays
c.Offset(0, 2) = Mid(t, m + 1)
Next c
End Sub
Serge
"marc" a écrit dans le message de news:Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" a écrit dans le message de news: O9R$bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" a écrit dans le message de news: O9R$bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" <i@v> a écrit dans le message de news: O9R$Rli2JHA.5896@TK2MSFTNGP02.phx.gbl...
bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :
Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc
Bonjour Isabelle
Ça fonctionne merveilleusement bien.
Un gros merci pour ton aide et bonne journée
Marc
"isabelle" a écrit dans le message de news: O9R$bonjour Marc,
voila,
Sub Macro1()
For Each c In Selection
For i = Len(c) To 1 Step -1
zz = Mid(c, i, 1)
If Not c.Offset(0, 2) <> "" Then
If Mid(c, i, 1) <> Chr(160) Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 2) = x
x = ""
GoTo suivant
End If
Else
suivant:
If Mid(c, i, 1) <> "," Then
x = Mid(c, i, 1) & x
Else
c.Offset(0, 1) = x
x = ""
Exit For
End If
End If
Next
Next
End Sub
isabelle
marc a écrit :Bonjour Isabelle
J'ai essayé ta macro sur un de mes fichiers et le résultat n'est pas aussi bon qu'avec le fichier que tu m'as envoyé.
Voici un exemple d'un de mes fichiers.
http://cjoint.com/?fvq34z64HH
Un gros merci pour ton aide
marc