Comment copier ou supprimer un nombre "X" de charactères

Le
rthompson
Bonjour à toutes et tous

Je bloque sur un souci depuis ce matin

Et à mon avis la solution est très simple, mais je ne trouve pas

J'ai une colonne rempli de texte (variant de 150 à 1250 charactères)

Comme je dois transférer cette info vers un fichier ou le nombre de
charactères est limité à 250,
je voudrais les séparer en différentes colonnes

Je vois deux possibilités
Soit je fais un Couper/Coller des premiers 250 charactères vers la colonne
suivante
Et je répète cette opération en ajoutant une colonne à chaque fois
Soit je découpe l'info en tranche de 250

Mon souci est que je ne sais pas quelle fonction utiliser pour cela

Si je fais =Left(CX;250) en CW j'ai les premiers 250 (jusque là ça va)
Mais comment je fais pour supprimer ces charactères dans CX?


Merci pour votre aide et à bientôt

Rex
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #20236201
Bonjour RThompson,

Cette limite de 250 caractères par cellule lors de la copie,
est-une limite que requiert ton classeur ou est-ce une difficulté
à copier des un contenu de cellule qui dépasse 255 caractères ?

Dans ton classeur d'origine,
tu sélectionnes ta colonne
tu appelles la commande : Barre des menus / données / conversion
tu retiens : largeur fixe et en double-cliquant sur les barres verticales
tu les fais disparaître à tour de rôle pour ne conserver celles qui
t'intéressent 250 , 500, 750 ...
Et voilà le travail est fait sans macro.
Il ne te reste plus qu'à copier tes données vers le classeur de destination !



"rthompson" discussion : #
Bonjour à toutes et tous

Je bloque sur un souci depuis ce matin

Et à mon avis la solution est très simple, mais je ne trouve pas

J'ai une colonne rempli de texte (variant de 150 à 1250 charactères)

Comme je dois transférer cette info vers un fichier ou le nombre de
charactères est limité à 250,
je voudrais les séparer en différentes colonnes

Je vois deux possibilités
Soit je fais un Couper/Coller des premiers 250 charactères vers la colonne
suivante
Et je répète cette opération en ajoutant une colonne à chaque fois
Soit je découpe l'info en tranche de 250

Mon souci est que je ne sais pas quelle fonction utiliser pour cela

Si je fais =Left(CX;250) en CW j'ai les premiers 250 (jusque là ça va)
Mais comment je fais pour supprimer ces charactères dans CX?


Merci pour votre aide et à bientôt

Rex
michdenis
Le #20236401
Cette procédure fait le boulot,
elle coupe la chaîne de caractères en tranche de 250 caractères
et elle copie les données vers le classeur de destination

Tu adaptes le nom des objets où c'est mentionné dans le code
'-----------------------------------------------
Sub test()
'la macro doit être dans le classeur où sont
'les données source
Dim X As Variant, A As Long, B As Long
Dim C As Integer, D As Long, Temp()

D = 0
'Feuille où sont tes données source
With Worksheets("Feuil1")
X = .Range("a1:A" & .Range("A65536").End(xlUp).Row).Value
End With
For A = 1 To UBound(X, 1)
For B = 1 To UBound(X, 2)
Do While Len(X(A, B)) > 0
C = C + 1
ReDim Preserve Temp(1 To C)
If Len(X(A, B)) <= 250 Then
Temp(C) = X(A, B)
X(A, B) = ""
Else
Temp(C) = Left(X(A, B), 250)
X(A, B) = Right(X(A, B), Len(X(A, B)) - 250)
End If
Loop
C = 0
D = D + 1
'Nom du classeur de destination à adapter
With Workbooks("ClasseurDeDestination.xls")
'Nom de la feuille où seront copiées les données
With .Worksheets("Feuil2")
'Si la copie ne débute pas en ligne 1, adapte
'le numéro de départ de la variable D
.Range("A" & D).Resize(, UBound(Temp)).Value = (Temp)
End With
End With
Next
Next
End Sub
'-----------------------------------------------



"michdenis"
Bonjour RThompson,

Cette limite de 250 caractères par cellule lors de la copie,
est-une limite que requiert ton classeur ou est-ce une difficulté
à copier des un contenu de cellule qui dépasse 255 caractères ?

Dans ton classeur d'origine,
tu sélectionnes ta colonne
tu appelles la commande : Barre des menus / données / conversion
tu retiens : largeur fixe et en double-cliquant sur les barres verticales
tu les fais disparaître à tour de rôle pour ne conserver celles qui
t'intéressent 250 , 500, 750 ...
Et voilà le travail est fait sans macro.
Il ne te reste plus qu'à copier tes données vers le classeur de destination !



"rthompson" discussion : #
Bonjour à toutes et tous

Je bloque sur un souci depuis ce matin

Et à mon avis la solution est très simple, mais je ne trouve pas

J'ai une colonne rempli de texte (variant de 150 à 1250 charactères)

Comme je dois transférer cette info vers un fichier ou le nombre de
charactères est limité à 250,
je voudrais les séparer en différentes colonnes

Je vois deux possibilités
Soit je fais un Couper/Coller des premiers 250 charactères vers la colonne
suivante
Et je répète cette opération en ajoutant une colonne à chaque fois
Soit je découpe l'info en tranche de 250

Mon souci est que je ne sais pas quelle fonction utiliser pour cela

Si je fais =Left(CX;250) en CW j'ai les premiers 250 (jusque là ça va)
Mais comment je fais pour supprimer ces charactères dans CX?


Merci pour votre aide et à bientôt

Rex
rthompson
Le #20236391
Bonjour Michdenis

Toujours fidèle au poste je vois :-)

Je suis (encore) sous Excel 2003 version Uk et je ne vois pas conversion
Est-ce une nouveauté 2007?

A tout de suite et merci

Rex


"michdenis"
Bonjour RThompson,

Cette limite de 250 caractères par cellule lors de la copie,
est-une limite que requiert ton classeur ou est-ce une difficulté
à copier des un contenu de cellule qui dépasse 255 caractères ?

Dans ton classeur d'origine,
tu sélectionnes ta colonne
tu appelles la commande : Barre des menus / données / conversion
tu retiens : largeur fixe et en double-cliquant sur les barres verticales
tu les fais disparaître à tour de rôle pour ne conserver celles qui
t'intéressent 250 , 500, 750 ...
Et voilà le travail est fait sans macro.
Il ne te reste plus qu'à copier tes données vers le classeur de
destination !



"rthompson" groupe de
discussion : #
Bonjour à toutes et tous

Je bloque sur un souci depuis ce matin

Et à mon avis la solution est très simple, mais je ne trouve pas

J'ai une colonne rempli de texte (variant de 150 à 1250 charactères)

Comme je dois transférer cette info vers un fichier ou le nombre de
charactères est limité à 250,
je voudrais les séparer en différentes colonnes

Je vois deux possibilités
Soit je fais un Couper/Coller des premiers 250 charactères vers la colonne
suivante
Et je répète cette opération en ajoutant une colonne à chaque fois
Soit je découpe l'info en tranche de 250

Mon souci est que je ne sais pas quelle fonction utiliser pour cela

Si je fais =Left(CX;250) en CW j'ai les premiers 250 (jusque là ça va)
Mais comment je fais pour supprimer ces charactères dans CX?


Merci pour votre aide et à bientôt

Rex



michdenis
Le #20236461
Soit Excel 2003, la commande s'appelle "convertir..."
elle sous le menu "données".


"rthompson" discussion :
Bonjour Michdenis

Toujours fidèle au poste je vois :-)

Je suis (encore) sous Excel 2003 version Uk et je ne vois pas conversion
Est-ce une nouveauté 2007?

A tout de suite et merci

Rex


"michdenis"
Bonjour RThompson,

Cette limite de 250 caractères par cellule lors de la copie,
est-une limite que requiert ton classeur ou est-ce une difficulté
à copier des un contenu de cellule qui dépasse 255 caractères ?

Dans ton classeur d'origine,
tu sélectionnes ta colonne
tu appelles la commande : Barre des menus / données / conversion
tu retiens : largeur fixe et en double-cliquant sur les barres verticales
tu les fais disparaître à tour de rôle pour ne conserver celles qui
t'intéressent 250 , 500, 750 ...
Et voilà le travail est fait sans macro.
Il ne te reste plus qu'à copier tes données vers le classeur de
destination !



"rthompson" groupe de
discussion : #
Bonjour à toutes et tous

Je bloque sur un souci depuis ce matin

Et à mon avis la solution est très simple, mais je ne trouve pas

J'ai une colonne rempli de texte (variant de 150 à 1250 charactères)

Comme je dois transférer cette info vers un fichier ou le nombre de
charactères est limité à 250,
je voudrais les séparer en différentes colonnes

Je vois deux possibilités
Soit je fais un Couper/Coller des premiers 250 charactères vers la colonne
suivante
Et je répète cette opération en ajoutant une colonne à chaque fois
Soit je découpe l'info en tranche de 250

Mon souci est que je ne sais pas quelle fonction utiliser pour cela

Si je fais =Left(CX;250) en CW j'ai les premiers 250 (jusque là ça va)
Mais comment je fais pour supprimer ces charactères dans CX?


Merci pour votre aide et à bientôt

Rex



rthompson
Le #20236511
Bonjour à nouveau

Je ne vois pas Conversion dans ce menu

MAIS
C'est pas grââââââââââââve

Parce que ta macro fait son boulot MERCI


A part cela je ne comprends pas très bien les combinaison Left Right et Len
mais ce sera pour un autre jour

Il faut bien se laisser des aventures à découvrir plus tard

Encore merci à toi

Et à bientôt

Rex


"michdenis"
Soit Excel 2003, la commande s'appelle "convertir..."
elle sous le menu "données".


"rthompson" groupe de
discussion :
Bonjour Michdenis

Toujours fidèle au poste je vois :-)

Je suis (encore) sous Excel 2003 version Uk et je ne vois pas conversion
Est-ce une nouveauté 2007?

A tout de suite et merci

Rex


"michdenis"
Bonjour RThompson,

Cette limite de 250 caractères par cellule lors de la copie,
est-une limite que requiert ton classeur ou est-ce une difficulté
à copier des un contenu de cellule qui dépasse 255 caractères ?

Dans ton classeur d'origine,
tu sélectionnes ta colonne
tu appelles la commande : Barre des menus / données / conversion
tu retiens : largeur fixe et en double-cliquant sur les barres verticales
tu les fais disparaître à tour de rôle pour ne conserver celles qui
t'intéressent 250 , 500, 750 ...
Et voilà le travail est fait sans macro.
Il ne te reste plus qu'à copier tes données vers le classeur de
destination !



"rthompson" groupe de
discussion : #
Bonjour à toutes et tous

Je bloque sur un souci depuis ce matin

Et à mon avis la solution est très simple, mais je ne trouve pas

J'ai une colonne rempli de texte (variant de 150 à 1250 charactères)

Comme je dois transférer cette info vers un fichier ou le nombre de
charactères est limité à 250,
je voudrais les séparer en différentes colonnes

Je vois deux possibilités
Soit je fais un Couper/Coller des premiers 250 charactères vers la
colonne
suivante
Et je répète cette opération en ajoutant une colonne à chaque fois
Soit je découpe l'info en tranche de 250

Mon souci est que je ne sais pas quelle fonction utiliser pour cela

Si je fais =Left(CX;250) en CW j'ai les premiers 250 (jusque là ça va)
Mais comment je fais pour supprimer ces charactères dans CX?


Merci pour votre aide et à bientôt

Rex






Publicité
Poster une réponse
Anonyme