OVH Cloud OVH Cloud

reponse d hier non fonctionnelle- re help

18 réponses
Avatar
Cher tous,=20

>comment scinder par le biais d'une macro une cellule en
>deux.
>les cellules choisies dans une colonne contiennent des
>noms et l'on veut que les 4 premi=E8res lettres soient dans
>la 1er cellule et le reste dans la seconde.
>
merci de me compiler tout cela pour que je puisse faire=20
un copier coller dans ma macro.

>merci d avance
>
>
cordialement
Alexis

>-----Message d'origine-----
>Salut
>
>Donn=E9e/convertir Largeur fixe
>2=E8me =E9tape, tu positionnes la s=E9paration apr=E8s le 4=E8me=20
caract=E8re
>
>pour la macro
> Columns("A:A").TextToColumns Destination:=3DRange("A1"),
>DataType:=3DxlFixedWidth, _
> FieldInfo:=3DArray(Array(0, 1), Array(4, 1))

10 réponses

1 2
Avatar
Michel Gaboly
Bonjour,

Il te manque peut-être une info importante : ce forum est
animé par des passionnés d'Excel, à titre bénévole.

Par conséquent la formulation

merci de me compiler tout cela pour que je puisse faire
un copier coller dans ma macro.

n'est vraiment pas adaptée.




Cher tous,

comment scinder par le biais d'une macro une cellule en
deux.
les cellules choisies dans une colonne contiennent des
noms et l'on veut que les 4 premières lettres soient dans
la 1er cellule et le reste dans la seconde.

merci de me compiler tout cela pour que je puisse faire

un copier coller dans ma macro.

merci d avance


cordialement

Alexis

-----Message d'origine-----
Salut

Donnée/convertir Largeur fixe
2ème étape, tu positionnes la séparation après le 4ème
caractère


pour la macro
Columns("A:A").TextToColumns Destination:=Range("A1"),
DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(4, 1))



--
Cordialement,

Michel Gaboly
http://www.gaboly.com


Avatar
Modeste
Bonjour @lex,
pour abonder dans le sens des propos de michel :

;-)))

1- en effet personne n'a le monopole ni des réponses ni du
savoir,
personne n'est tenu de répondre correctement ou
incorrectement à une question, ici tous les contributeurs
sont bénévoles.
si tu as une licence pour les produits que tu utilises ,
tu peux tenter d'exiger, auprès de la hot-line microsoft,
une réponse à tes questions, ou bien un abonnement à la
MSDN Library
;-)))

2-lorsque tu aura fréquenté plus longuement ce forum,
j'espére que tu fera preuve d'humilité vis-a-vis des
contributeurs réguliers de ce forum en reconnaissant et en
signifiant tous le bien de leur activité et de leur
persistance.

3-Si tu n'as pas eu de réponse satisfaisante il est
possible que les personnes qui ont lu ton messages ne
soient pas les plus affutées pour y répondre (c'est mon
cas), celles qui auraient pu ou su, n'en ayant pas encore
pris connaissance.....


4-concernant le ton de ta réponse, sache également que
cela n'encourage pas les mordus (c'est mon cas) à essayer
de prendre de leur temps pour t'aider !!!!
:-(

5-Il n'y ni rancoeur ni méchanceté dans ce message, qui je
l'espére tel mon pseudo t'incitera à un peu d'humilité .


et pour finir toujours sur un ton humoristique non dénué
d'antécédents :
;-)))

surtout :
- ne lisez pas le manuel, encore moins l'aide
- ne réfléchissez pas au problême qui se pose à vous
- expliquez le plus confusément possible les phénoménes
constatés.
- exigez une réponse personnelle et immédiate.
- expliquez à celui qui vous aide comment et pourquoi il
aurait du appliquer *votre* solution (qui évidemment ne
marche pas)
- niez l'évidence : la solution qu'un bénévole a parfois
mis des heures à mettre au point ne marche pas chez vous
qui l'appliquez mal depuis 2 minutes.
- ne dites ni bonjour ni merci
- changez de fil et ne lisez pas toutes les réponses qui
ont pu etre déja fournies.
- ne perdez pas la face : ne faites savoir à personne
que vous avez été dépanné.
- insultez les contributeurs bénévoles, ils ne veulent pas
l'avouer, mais ils adorent cela.

Si c'est un MVP vous avez un bonus.

@ bientot !!!
Avatar
ru-th
Je ne sais pas ce qu'en pensera le volatile mais, cette anti-charte
mériterait de figurer sur ex-disciplus
;-))))
a+
rural thierry
dommage que cela soit un peu long pour une signature
surtout :
- ne lisez pas le manuel, encore moins l'aide
- ne réfléchissez pas au problême qui se pose à vous
- expliquez le plus confusément possible les phénoménes
constatés.
- exigez une réponse personnelle et immédiate.
- expliquez à celui qui vous aide comment et pourquoi il
aurait du appliquer *votre* solution (qui évidemment ne
marche pas)
- niez l'évidence : la solution qu'un bénévole a parfois
mis des heures à mettre au point ne marche pas chez vous
qui l'appliquez mal depuis 2 minutes.
- ne dites ni bonjour ni merci
- changez de fil et ne lisez pas toutes les réponses qui
ont pu etre déja fournies.
- ne perdez pas la face : ne faites savoir à personne
que vous avez été dépanné.
- insultez les contributeurs bénévoles, ils ne veulent pas
l'avouer, mais ils adorent cela.

Si c'est un MVP vous avez un bonus.

"Modeste" a écrit dans le message de
news: 0d2901c3add1$1b537410$
Bonjour @lex,
pour abonder dans le sens des propos de michel :

;-)))

1- en effet personne n'a le monopole ni des réponses ni du
savoir,
personne n'est tenu de répondre correctement ou
incorrectement à une question, ici tous les contributeurs
sont bénévoles.
si tu as une licence pour les produits que tu utilises ,
tu peux tenter d'exiger, auprès de la hot-line microsoft,
une réponse à tes questions, ou bien un abonnement à la
MSDN Library
;-)))

2-lorsque tu aura fréquenté plus longuement ce forum,
j'espére que tu fera preuve d'humilité vis-a-vis des
contributeurs réguliers de ce forum en reconnaissant et en
signifiant tous le bien de leur activité et de leur
persistance.

3-Si tu n'as pas eu de réponse satisfaisante il est
possible que les personnes qui ont lu ton messages ne
soient pas les plus affutées pour y répondre (c'est mon
cas), celles qui auraient pu ou su, n'en ayant pas encore
pris connaissance.....


4-concernant le ton de ta réponse, sache également que
cela n'encourage pas les mordus (c'est mon cas) à essayer
de prendre de leur temps pour t'aider !!!!
:-(

5-Il n'y ni rancoeur ni méchanceté dans ce message, qui je
l'espére tel mon pseudo t'incitera à un peu d'humilité .


et pour finir toujours sur un ton humoristique non dénué
d'antécédents :
;-)))

surtout :
- ne lisez pas le manuel, encore moins l'aide
- ne réfléchissez pas au problême qui se pose à vous
- expliquez le plus confusément possible les phénoménes
constatés.
- exigez une réponse personnelle et immédiate.
- expliquez à celui qui vous aide comment et pourquoi il
aurait du appliquer *votre* solution (qui évidemment ne
marche pas)
- niez l'évidence : la solution qu'un bénévole a parfois
mis des heures à mettre au point ne marche pas chez vous
qui l'appliquez mal depuis 2 minutes.
- ne dites ni bonjour ni merci
- changez de fil et ne lisez pas toutes les réponses qui
ont pu etre déja fournies.
- ne perdez pas la face : ne faites savoir à personne
que vous avez été dépanné.
- insultez les contributeurs bénévoles, ils ne veulent pas
l'avouer, mais ils adorent cela.

Si c'est un MVP vous avez un bonus.

@ bientot !!!
Avatar
Michel Gaboly
Heureusement qu'il y a beaucoup de Smileys ;-)))))


Bonjour @lex,
pour abonder dans le sens des propos de michel :

;-)))

1- en effet personne n'a le monopole ni des réponses ni du
savoir,
personne n'est tenu de répondre correctement ou
incorrectement à une question, ici tous les contributeurs
sont bénévoles.
si tu as une licence pour les produits que tu utilises ,
tu peux tenter d'exiger, auprès de la hot-line microsoft,
une réponse à tes questions, ou bien un abonnement à la
MSDN Library
;-)))

2-lorsque tu aura fréquenté plus longuement ce forum,
j'espére que tu fera preuve d'humilité vis-a-vis des
contributeurs réguliers de ce forum en reconnaissant et en
signifiant tous le bien de leur activité et de leur
persistance.

3-Si tu n'as pas eu de réponse satisfaisante il est
possible que les personnes qui ont lu ton messages ne
soient pas les plus affutées pour y répondre (c'est mon
cas), celles qui auraient pu ou su, n'en ayant pas encore
pris connaissance.....

4-concernant le ton de ta réponse, sache également que
cela n'encourage pas les mordus (c'est mon cas) à essayer
de prendre de leur temps pour t'aider !!!!
:-(

5-Il n'y ni rancoeur ni méchanceté dans ce message, qui je
l'espére tel mon pseudo t'incitera à un peu d'humilité .

et pour finir toujours sur un ton humoristique non dénué
d'antécédents :
;-)))

surtout :
- ne lisez pas le manuel, encore moins l'aide
- ne réfléchissez pas au problême qui se pose à vous
- expliquez le plus confusément possible les phénoménes
constatés.
- exigez une réponse personnelle et immédiate.
- expliquez à celui qui vous aide comment et pourquoi il
aurait du appliquer *votre* solution (qui évidemment ne
marche pas)
- niez l'évidence : la solution qu'un bénévole a parfois
mis des heures à mettre au point ne marche pas chez vous
qui l'appliquez mal depuis 2 minutes.
- ne dites ni bonjour ni merci
- changez de fil et ne lisez pas toutes les réponses qui
ont pu etre déja fournies.
- ne perdez pas la face : ne faites savoir à personne
que vous avez été dépanné.
- insultez les contributeurs bénévoles, ils ne veulent pas
l'avouer, mais ils adorent cela.

Si c'est un MVP vous avez un bonus.

@ bientot !!!


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

Avatar
Modeste
;-)))
ah mon Père, ce coup d'humeur vaut-il une messe ....

si votre religiosité a raté des épisodes....
http://minilien.com/?AtaXFxl0pc

Flo connait déja cette diatribe que j'avais récupéré sur
MPFW et c'est ninette13 (de marseille) qui avait eu à
l'époque le malencontreux plaisir de l'étrenner....

@+
Avatar
Modeste
;-)))
eh bien voilà @lex tu es dans le bain maintenant !!!
bienvenue parmi les allumés d'EXCEL !!!

Ta question manque tout de même de précision.

les cellules à scinder sont-elles :
dans la même feuille ?
dans la meme ligne ou colonne
la cellule de droite ? ou du dessous (selon l'orientation
choisie) est elle:
vide
ou bien peut etre écrasée
sinon faut-il la décaler ???

lorsque les premiers caractères sont des espaces, doivent-
ils etre pris en compte?

Lorsque la cellule à séparer est de type numérique la
place du signe (+ ou -) doit-elle etre réservée

lorsque les résultats de la séparation peuvent etre
interprétés numériquement doit-on les traiter comme tel ou
bien les considérer comme texte

exemples :
visible Nb caractères
A2500.12 10 (2 espaces au début)
A2500.12 8
2500,12 7
-15,00 3
2500,00 4
24/12/2003 5


un exemple de macro à mettre dans un module standard
qui travaille sur les 30 premieres celules de la colonne A

a adapter ensuite selon besoin

Sub Alex()
For i = 1 To 30
x = Cells(i, 1).Value
'------pour supprimer les espaces avant
'------sinon mettre en commentaire
x = Trim(x)
'--------------------------------
y = Left(x, 4)
z = Mid(x, 5, Len(x))
Cells(i, 1).Value = y
'------pour décaler
'------sinon mettre en commentaire
Cells(i, 2).Insert Shift:=xlToRight
'----------------------------------------------
Cells(i, 2).Value = z
Next

End Sub

@+


-----Message d'origine-----
Veuillez accepter toutes mes excuses,

je ne connaissais pas la charte et l'esprit de ce forum.

Pourriez vous svp m'aider a me depatouillé car j'ai 9546
cellules à modifier à la main.

@lex

-----Message d'origine-----
Bonjour,

Il te manque peut-être une info importante : ce forum est
animé par des passionnés d'Excel, à titre bénévole.

Par conséquent la formulation

merci de me compiler tout cela pour que je puisse
faire

un copier coller dans ma macro.

n'est vraiment pas adaptée.




Cher tous,

comment scinder par le biais d'une macro une cellule
en



deux.
les cellules choisies dans une colonne contiennent des
noms et l'on veut que les 4 premières lettres soient
dans



la 1er cellule et le reste dans la seconde.

merci de me compiler tout cela pour que je puisse faire

un copier coller dans ma macro.

merci d avance


cordialement

Alexis

-----Message d'origine-----
Salut

Donnée/convertir Largeur fixe
2ème étape, tu positionnes la séparation après le 4ème
caractère


pour la macro
Columns("A:A").TextToColumns Destination:=Range
("A1"),



DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(4, 1))



--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.

.







Avatar
sabatier
bonjour alex
subodorant que VBA n'est pas ta tasse de thé (se limiter à un
copier-coller de ce qui s'écrit ici a de fortes chances de mener à de
belles, voire dangereuses, surprises), as(tu regardé du côté de
Données/Convertir qui va te paraître, du moins j'espère, plus facile à
manipuler?
jps

Modeste wrote:

;-)))
eh bien voilà @lex tu es dans le bain maintenant !!!
bienvenue parmi les allumés d'EXCEL !!!

Ta question manque tout de même de précision.

les cellules à scinder sont-elles :
dans la même feuille ?
dans la meme ligne ou colonne
la cellule de droite ? ou du dessous (selon l'orientation
choisie) est elle:
vide
ou bien peut etre écrasée
sinon faut-il la décaler ???

lorsque les premiers caractères sont des espaces, doivent-
ils etre pris en compte?

Lorsque la cellule à séparer est de type numérique la
place du signe (+ ou -) doit-elle etre réservée

lorsque les résultats de la séparation peuvent etre
interprétés numériquement doit-on les traiter comme tel ou
bien les considérer comme texte

exemples :
visible Nb caractères
A2500.12 10 (2 espaces au début)
A2500.12 8
2500,12 7
-15,00 3
2500,00 4
24/12/2003 5

un exemple de macro à mettre dans un module standard
qui travaille sur les 30 premieres celules de la colonne A

a adapter ensuite selon besoin

Sub Alex()
For i = 1 To 30
x = Cells(i, 1).Value
'------pour supprimer les espaces avant
'------sinon mettre en commentaire
x = Trim(x)
'--------------------------------
y = Left(x, 4)
z = Mid(x, 5, Len(x))
Cells(i, 1).Value = y
'------pour décaler
'------sinon mettre en commentaire
Cells(i, 2).Insert Shift:=xlToRight
'----------------------------------------------
Cells(i, 2).Value = z
Next

End Sub

@+

-----Message d'origine-----
Veuillez accepter toutes mes excuses,

je ne connaissais pas la charte et l'esprit de ce forum.

Pourriez vous svp m'aider a me depatouillé car j'ai 9546
cellules à modifier à la main.

@lex

-----Message d'origine-----
Bonjour,

Il te manque peut-être une info importante : ce forum est
animé par des passionnés d'Excel, à titre bénévole.

Par conséquent la formulation

merci de me compiler tout cela pour que je puisse
faire

un copier coller dans ma macro.

n'est vraiment pas adaptée.




Cher tous,

comment scinder par le biais d'une macro une cellule
en



deux.
les cellules choisies dans une colonne contiennent des
noms et l'on veut que les 4 premières lettres soient
dans



la 1er cellule et le reste dans la seconde.

merci de me compiler tout cela pour que je puisse faire

un copier coller dans ma macro.

merci d avance


cordialement

Alexis

-----Message d'origine-----
Salut

Donnée/convertir Largeur fixe
2ème étape, tu positionnes la séparation après le 4ème
caractère


pour la macro
Columns("A:A").TextToColumns Destination:=Range
("A1"),



DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(4, 1))



--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.

.









Avatar
Merci de m'avoir remis les pieds sur terre.
il est vrai que l'on vole parfois dans d'autres spheres
quand on est poussé par sa direction et l on
devient "directif" sans s'en apercevoir (idem à la maison)
enfin je ne suis pas là pour vous parler de mes pb,
mais merci.

Pour repondre à modeste, je vais essayer de donner le
maximun d'info sur mon soucis.

j'ai une colonne remplie de caratères alphabetiques de
type "fichier client" qui comporte plus de 4 catactères
sans espace, ni caractère numérique et autres.
Mon souhait est de scinder sur deux cellules cote à cote
les 4 premiers caratères et le reste.

MERCI A VOUS TOUS
DE TOUT COEUR - a bientot :°


-----Message d'origine-----
bonjour alex
subodorant que VBA n'est pas ta tasse de thé (se limiter
à un

copier-coller de ce qui s'écrit ici a de fortes chances
de mener à de

belles, voire dangereuses, surprises), as(tu regardé du
côté de

Données/Convertir qui va te paraître, du moins j'espère,
plus facile à

manipuler?
jps

Modeste wrote:

;-)))
eh bien voilà @lex tu es dans le bain maintenant !!!
bienvenue parmi les allumés d'EXCEL !!!

Ta question manque tout de même de précision.

les cellules à scinder sont-elles :
dans la même feuille ?
dans la meme ligne ou colonne
la cellule de droite ? ou du dessous (selon
l'orientation


choisie) est elle:
vide
ou bien peut etre écrasée
sinon faut-il la décaler ???

lorsque les premiers caractères sont des espaces,
doivent-


ils etre pris en compte?

Lorsque la cellule à séparer est de type numérique la
place du signe (+ ou -) doit-elle etre réservée

lorsque les résultats de la séparation peuvent etre
interprétés numériquement doit-on les traiter comme
tel ou


bien les considérer comme texte

exemples :
visible Nb caractères
A2500.12 10 (2 espaces au début)
A2500.12 8
2500,12 7
-15,00 3
2500,00 4
24/12/2003 5

un exemple de macro à mettre dans un module standard
qui travaille sur les 30 premieres celules de la
colonne A



a adapter ensuite selon besoin

Sub Alex()
For i = 1 To 30
x = Cells(i, 1).Value
'------pour supprimer les espaces avant
'------sinon mettre en commentaire
x = Trim(x)
'--------------------------------
y = Left(x, 4)
z = Mid(x, 5, Len(x))
Cells(i, 1).Value = y
'------pour décaler
'------sinon mettre en commentaire
Cells(i, 2).Insert Shift:=xlToRight
'----------------------------------------------
Cells(i, 2).Value = z
Next

End Sub

@+

-----Message d'origine-----
Veuillez accepter toutes mes excuses,

je ne connaissais pas la charte et l'esprit de ce
forum.




Pourriez vous svp m'aider a me depatouillé car j'ai
9546



cellules à modifier à la main.

@lex

-----Message d'origine-----
Bonjour,

Il te manque peut-être une info importante : ce
forum est




animé par des passionnés d'Excel, à titre bénévole.

Par conséquent la formulation

merci de me compiler tout cela pour que je puisse
faire

un copier coller dans ma macro.

n'est vraiment pas adaptée.




Cher tous,

comment scinder par le biais d'une macro une
cellule






en
deux.
les cellules choisies dans une colonne
contiennent des






noms et l'on veut que les 4 premières lettres
soient






dans
la 1er cellule et le reste dans la seconde.

merci de me compiler tout cela pour que je puisse

faire





un copier coller dans ma macro.

merci d avance


cordialement

Alexis

-----Message d'origine-----
Salut

Donnée/convertir Largeur fixe
2ème étape, tu positionnes la séparation après le
4ème






caractère

pour la macro
Columns("A:A").TextToColumns Destination:=Range
("A1"),



DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(4, 1))



--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.

.


.










Avatar
ru-th
Salut

dans ton 1er message, je t'indiquai déjà cette macro (sur 1 seule ligne)
columns("A:A").TextToColumns
Destination:=Range("A1"),DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
1), Array(4, 1))

il suffit que tu changes A:A par la colonne concernée (et que la cellule d'à
côté soit vide)
a+
rural thierry


"@LEX revient sur terre" a écrit dans
le message de news: 07e701c3ae85$a7cfc240$
Merci de m'avoir remis les pieds sur terre.
il est vrai que l'on vole parfois dans d'autres spheres
quand on est poussé par sa direction et l on
devient "directif" sans s'en apercevoir (idem à la maison)
enfin je ne suis pas là pour vous parler de mes pb,
mais merci.

Pour repondre à modeste, je vais essayer de donner le
maximun d'info sur mon soucis.

j'ai une colonne remplie de caratères alphabetiques de
type "fichier client" qui comporte plus de 4 catactères
sans espace, ni caractère numérique et autres.
Mon souhait est de scinder sur deux cellules cote à cote
les 4 premiers caratères et le reste.

MERCI A VOUS TOUS
DE TOUT COEUR - a bientot :°


-----Message d'origine-----
bonjour alex
subodorant que VBA n'est pas ta tasse de thé (se limiter
à un

copier-coller de ce qui s'écrit ici a de fortes chances
de mener à de

belles, voire dangereuses, surprises), as(tu regardé du
côté de

Données/Convertir qui va te paraître, du moins j'espère,
plus facile à

manipuler?
jps

Modeste wrote:

;-)))
eh bien voilà @lex tu es dans le bain maintenant !!!
bienvenue parmi les allumés d'EXCEL !!!

Ta question manque tout de même de précision.

les cellules à scinder sont-elles :
dans la même feuille ?
dans la meme ligne ou colonne
la cellule de droite ? ou du dessous (selon
l'orientation


choisie) est elle:
vide
ou bien peut etre écrasée
sinon faut-il la décaler ???

lorsque les premiers caractères sont des espaces,
doivent-


ils etre pris en compte?

Lorsque la cellule à séparer est de type numérique la
place du signe (+ ou -) doit-elle etre réservée

lorsque les résultats de la séparation peuvent etre
interprétés numériquement doit-on les traiter comme
tel ou


bien les considérer comme texte

exemples :
visible Nb caractères
A2500.12 10 (2 espaces au début)
A2500.12 8
2500,12 7
-15,00 3
2500,00 4
24/12/2003 5

un exemple de macro à mettre dans un module standard
qui travaille sur les 30 premieres celules de la
colonne A



a adapter ensuite selon besoin

Sub Alex()
For i = 1 To 30
x = Cells(i, 1).Value
'------pour supprimer les espaces avant
'------sinon mettre en commentaire
x = Trim(x)
'--------------------------------
y = Left(x, 4)
z = Mid(x, 5, Len(x))
Cells(i, 1).Value = y
'------pour décaler
'------sinon mettre en commentaire
Cells(i, 2).Insert Shift:=xlToRight
'----------------------------------------------
Cells(i, 2).Value = z
Next

End Sub

@+

-----Message d'origine-----
Veuillez accepter toutes mes excuses,

je ne connaissais pas la charte et l'esprit de ce
forum.




Pourriez vous svp m'aider a me depatouillé car j'ai
9546



cellules à modifier à la main.

@lex

-----Message d'origine-----
Bonjour,

Il te manque peut-être une info importante : ce
forum est




animé par des passionnés d'Excel, à titre bénévole.

Par conséquent la formulation

merci de me compiler tout cela pour que je puisse
faire

un copier coller dans ma macro.

n'est vraiment pas adaptée.




Cher tous,

comment scinder par le biais d'une macro une
cellule






en
deux.
les cellules choisies dans une colonne
contiennent des






noms et l'on veut que les 4 premières lettres
soient






dans
la 1er cellule et le reste dans la seconde.

merci de me compiler tout cela pour que je puisse

faire





un copier coller dans ma macro.

merci d avance


cordialement

Alexis

-----Message d'origine-----
Salut

Donnée/convertir Largeur fixe
2ème étape, tu positionnes la séparation après le
4ème






caractère

pour la macro
Columns("A:A").TextToColumns Destination:=Range
("A1"),



DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(4, 1))



--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.

.


.










Avatar
alex
Voila comme je l'ai recopier dans ma macro et ce la ne
fonctionne pas

Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 19/11/2003 par alex
'
' Touche de raccourci du clavier: Ctrl+A
' columns("A:A").TextToColumns Destination:=Range
("A1"),DataType:=xlFixedWidth, FieldInfo:=Array(Array
(0,1), Array(4, 1))


End Sub

je dois vraiment m'y prendre comme un bleu, j'enrage de
mes lacunes.

Alex

-----Message d'origine-----
Salut

dans ton 1er message, je t'indiquai déjà cette macro
(sur 1 seule ligne)

columns("A:A").TextToColumns
Destination:=Range("A1"),DataType:=xlFixedWidth,
FieldInfo:=Array(Array(0,

1), Array(4, 1))

il suffit que tu changes A:A par la colonne concernée
(et que la cellule d'à

côté soit vide)
a+
rural thierry


"@LEX revient sur terre"
a écrit dans

le message de news: 07e701c3ae85$a7cfc240
$

Merci de m'avoir remis les pieds sur terre.
il est vrai que l'on vole parfois dans d'autres spheres
quand on est poussé par sa direction et l on
devient "directif" sans s'en apercevoir (idem à la
maison)

enfin je ne suis pas là pour vous parler de mes pb,
mais merci.

Pour repondre à modeste, je vais essayer de donner le
maximun d'info sur mon soucis.

j'ai une colonne remplie de caratères alphabetiques de
type "fichier client" qui comporte plus de 4 catactères
sans espace, ni caractère numérique et autres.
Mon souhait est de scinder sur deux cellules cote à cote
les 4 premiers caratères et le reste.

MERCI A VOUS TOUS
DE TOUT COEUR - a bientot :°


-----Message d'origine-----
bonjour alex
subodorant que VBA n'est pas ta tasse de thé (se limiter
à un

copier-coller de ce qui s'écrit ici a de fortes chances
de mener à de

belles, voire dangereuses, surprises), as(tu regardé du
côté de

Données/Convertir qui va te paraître, du moins j'espère,
plus facile à

manipuler?
jps

Modeste wrote:

;-)))
eh bien voilà @lex tu es dans le bain maintenant !!!
bienvenue parmi les allumés d'EXCEL !!!

Ta question manque tout de même de précision.

les cellules à scinder sont-elles :
dans la même feuille ?
dans la meme ligne ou colonne
la cellule de droite ? ou du dessous (selon
l'orientation


choisie) est elle:
vide
ou bien peut etre écrasée
sinon faut-il la décaler ???

lorsque les premiers caractères sont des espaces,
doivent-


ils etre pris en compte?

Lorsque la cellule à séparer est de type numérique la
place du signe (+ ou -) doit-elle etre réservée

lorsque les résultats de la séparation peuvent etre
interprétés numériquement doit-on les traiter comme
tel ou


bien les considérer comme texte

exemples :
visible Nb caractères
A2500.12 10 (2 espaces au début)
A2500.12 8
2500,12 7
-15,00 3
2500,00 4
24/12/2003 5

un exemple de macro à mettre dans un module standard
qui travaille sur les 30 premieres celules de la
colonne A



a adapter ensuite selon besoin

Sub Alex()
For i = 1 To 30
x = Cells(i, 1).Value
'------pour supprimer les espaces avant
'------sinon mettre en commentaire
x = Trim(x)
'--------------------------------
y = Left(x, 4)
z = Mid(x, 5, Len(x))
Cells(i, 1).Value = y
'------pour décaler
'------sinon mettre en commentaire
Cells(i, 2).Insert Shift:=xlToRight
'----------------------------------------------
Cells(i, 2).Value = z
Next

End Sub

@+

-----Message d'origine-----
Veuillez accepter toutes mes excuses,

je ne connaissais pas la charte et l'esprit de ce
forum.




Pourriez vous svp m'aider a me depatouillé car j'ai
9546



cellules à modifier à la main.

@lex

-----Message d'origine-----
Bonjour,

Il te manque peut-être une info importante : ce
forum est




animé par des passionnés d'Excel, à titre bénévole.

Par conséquent la formulation

merci de me compiler tout cela pour que je
puisse





faire
un copier coller dans ma macro.

n'est vraiment pas adaptée.




Cher tous,

comment scinder par le biais d'une macro une
cellule






en
deux.
les cellules choisies dans une colonne
contiennent des






noms et l'on veut que les 4 premières lettres
soient






dans
la 1er cellule et le reste dans la seconde.

merci de me compiler tout cela pour que je puisse

faire





un copier coller dans ma macro.

merci d avance


cordialement

Alexis

-----Message d'origine-----
Salut

Donnée/convertir Largeur fixe
2ème étape, tu positionnes la séparation après le
4ème






caractère

pour la macro
Columns("A:A").TextToColumns Destination:=Range
("A1"),



DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(4,
1))








--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.

.


.






.









1 2