Bonjour,
Je réalise une macro, qui comprend la copie d'un tableau issu d'un logiciel dans une feuille Excel.
Le tableau se présente sous la forme suivante, avec les valeurs numériques en format international (décimales séparées par un point).
Le logiciel dispose d'une fonction de copie automatique du tableau, dont je ne connais pas le fonctionnement précis, en particulier le format.
En collant manuellement (clic droit > coller ou collage spécial), j'obtiens bien ce que je souhaite :
Les valeurs dans les cases grises sont les coordonnées de mes points, de l'ordre de l'unité.
Pour coller dans Excel, j'utilise les lignes suivantes dans ma macro :
Range("B20").Select
ActiveSheet.PasteSpecial Format:="Texte", _
DisplayAsIcon:=False, Link:=False, DisplayAsIcon:=False, NoHTMLFormatting:= True
En collant avec la macro, j'obtiens ceci :
Les valeurs dans les cases grises qui étaient supérieures à 1 sont passées en milliers.
J’utilise les options de formatage par défaut (identique Système) pour les séparateurs des milliers et des décimaux.
Je ne souhaite pas modifier ce paramètre pour conserver l'utilisation de la macro sur d'autres postes informatiques.
J'ai testé les solutions de collage suivantes sans succès :
- Format "Texte Unicode"
- Directement avec Activesheet.Paste
- ActiveSheet.PasteSpecial (Values)
Pouvez-vous m'expliquer pourquoi la macro diffère du fonctionnement manuel ?
Comment puis-je y remédier ?
Je souhaite éviter un traitement par division des valeurs > 1000, qui serait lent et peu pratique.
Merci d'avance,
Clément