• Initiateur de la discussion Initiateur de la discussion Nikom
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

Nikom

Guest
Bonjour le forum

j'importe régulierement via une macro un fichier en provenance d'un logiciel (export excel) et certaines colonnes sont en texte.

comment convertir ces colonnes en nombre via une macro?


pour commencer, je pense qu'il faut désactiver le calcul automatique mais après, je bloc: l'enregistreur de macro ne prend pas le 'clic droit' sur la colonne + 'convertir en nombre'

je n'ai pas envie de faire de formules, c'est trop lourd et l'idéal est de convertir en même temps que l'import.


Merci de votre aide

Nikom
(qui poste aujourd'hui son premier message sur le nouveau forum, snif)



[file name=exemple_20050415151339.zip size=9098]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/exemple_20050415151339.zip[/file]
 

Pièces jointes

bonjour,
Au lieu d'enregistrer le clic droit tu enregistres directement par le menu Données/Convertir...
Pour la colonne C ça donne :
Columns('C:C').Select
Selection.TextToColumns Destination:=Range('C1'), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True
A+
 
Bonjour,

Sinon, au niveau macro, tu peux essayer ca :

Exemple pour la colonne N° Client :

Columns(3).Find('*', , , , , xlPrevious).Offset(0, 0).Select
Range(ActiveCell, Cells(2, 3)).Select

On Error Resume Next
For Each Cell In Selection
Cell.Value = CDbl(Val(Cell.Text))
Next


Par contre, le format numérique va supprimer les zéros devant le numéro client

A bientôt,
Olivier
 
J'ai aussi un probleme lié au format.

J'ai par exemple un code région : 30 dans une cellule
un code produit : 20 dans une autre cellule
et j'utilise la formule =[coordonnée de la 1ere cellule]&[coordonnée de la 2e cellule] pour avoir un code produit dans une région (ici : 3020).

Cependant, ce 3020 n'est pas en format nombre, qui est le format dont j'ai besoin pour l'utiliser par ailleurs.

Une idée ?

Merci.
 
bonsoir à tous

j'ai pris l'option de passer par l'enregistreur de macro, ça marche à merveille. merci à vous galopin et barotoli

sinon, adrien, tu peu utiliser la fonction CNUM() qui convertit ton text en nombre.

voir piece jointe

bonne soirée à tous et encore merci. on en apprend tous les jours.

a+

Nikom [file name=exemple code region_20050415170834.zip size=1403]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/exemple code region_20050415170834.zip[/file]
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
11
Affichages
1 K
A
Réponses
5
Affichages
3 K
A
Réponses
11
Affichages
2 K
Axel22
A
Retour