Problème format nombre après l'importation en vba d'un Tableau d'une page Web

Le
fred
Bonjour,
J'ai un souci en vba avec l'importation d'un Tableau d'une page Web.
Lorque j'importe des nombres de la Table j'ai un problème de format par
exemple :
avec le nombre 0,978 c'est ok mais si j'ai 1,060 le nombre importé appparait
sous 1060.
J'ai tenté de mettre
Selection.NumberFormat = "#,#0.00" mais le nombre importé est 1060,00 ou
bien
Selection.NumberFormat = "#,000" le nombre apparait bien en 1,060 mais sa
valeur est 1060.
Les nombre < 1 (ceux là sont en format texte) apparaissent correctement
ainsi que leur valeur, mais les nombres > 1 peuvent apparaitre correctement
ave le NumberFormat = "#,000" mais leur valeur est fausse!
Comment faire?
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichDenis
Le #4428961
Ce qui t'arrive est "normal". Dans ta page Web, la virgule sert en même temps
de séparateur décimale et de séparateur de milliers. Quand tu importes tes
données dans un fichier Excel, Excel "pense" que le séparateur "," est le
séparateur décimale et agit en conséquence.

Tu peux insérer une colonne ou utiliser une nouvelle colonne et
utiliser cette formule pour transformer tes données...J'ai supposé
que tes données étaient en colonne C:C et tu recopies la formules
sur l'ensemble de la plage.

=SI(ENT(C1)=0;C1;SUBSTITUE(C1;",";"")*1)


"fred" Bonjour,
J'ai un souci en vba avec l'importation d'un Tableau d'une page Web.
Lorque j'importe des nombres de la Table j'ai un problème de format par
exemple :
avec le nombre 0,978 c'est ok mais si j'ai 1,060 le nombre importé appparait
sous 1060.
J'ai tenté de mettre
Selection.NumberFormat = "#,#0.00" mais le nombre importé est 1060,00 ou
bien
Selection.NumberFormat = "#,000" le nombre apparait bien en 1,060 mais sa
valeur est 1060.
Les nombre < 1 (ceux là sont en format texte) apparaissent correctement
ainsi que leur valeur, mais les nombres > 1 peuvent apparaitre correctement
ave le NumberFormat = "#,000" mais leur valeur est fausse!
Comment faire?
fred
Le #4151521
Merci pour ta réponse MichDenis...mais comment l'appliquer en VBA???

"MichDenis"
Ce qui t'arrive est "normal". Dans ta page Web, la virgule sert en même
temps
de séparateur décimale et de séparateur de milliers. Quand tu importes tes
données dans un fichier Excel, Excel "pense" que le séparateur "," est le
séparateur décimale et agit en conséquence.

Tu peux insérer une colonne ou utiliser une nouvelle colonne et
utiliser cette formule pour transformer tes données...J'ai supposé
que tes données étaient en colonne C:C et tu recopies la formules
sur l'ensemble de la plage.

=SI(ENT(C1)=0;C1;SUBSTITUE(C1;",";"")*1)


"fred" 45aa5da4$0$291$
Bonjour,
J'ai un souci en vba avec l'importation d'un Tableau d'une page Web.
Lorque j'importe des nombres de la Table j'ai un problème de format par
exemple :
avec le nombre 0,978 c'est ok mais si j'ai 1,060 le nombre importé
appparait
sous 1060.
J'ai tenté de mettre
Selection.NumberFormat = "#,#0.00" mais le nombre importé est 1060,00 ou
bien
Selection.NumberFormat = "#,000" le nombre apparait bien en 1,060 mais sa
valeur est 1060.
Les nombre < 1 (ceux là sont en format texte) apparaissent correctement
ainsi que leur valeur, mais les nombres > 1 peuvent apparaitre
correctement
ave le NumberFormat = "#,000" mais leur valeur est fausse!
Comment faire?





MichDenis
Le #4151411
Essaie ceci en adaptant le nom de la feuille et de la plage
de cellules concernée.

'--------------------------------
Sub test()

Application.EnableEvents = False
With Worksheets("Feuil1")
For Each C In .Range("A1:A10")
If Int(C) = 0 Then
C.Value = C
Else
C.Value = Application.Substitute(C, ".", "") * 1
End If
Next
End With
Application.EnableEvents = True
End Sub
'--------------------------------


"fred" 45afcb16$0$21548$
Merci pour ta réponse MichDenis...mais comment l'appliquer en VBA???

"MichDenis"
Ce qui t'arrive est "normal". Dans ta page Web, la virgule sert en même
temps
de séparateur décimale et de séparateur de milliers. Quand tu importes tes
données dans un fichier Excel, Excel "pense" que le séparateur "," est le
séparateur décimale et agit en conséquence.

Tu peux insérer une colonne ou utiliser une nouvelle colonne et
utiliser cette formule pour transformer tes données...J'ai supposé
que tes données étaient en colonne C:C et tu recopies la formules
sur l'ensemble de la plage.

=SI(ENT(C1)=0;C1;SUBSTITUE(C1;",";"")*1)


"fred" 45aa5da4$0$291$
Bonjour,
J'ai un souci en vba avec l'importation d'un Tableau d'une page Web.
Lorque j'importe des nombres de la Table j'ai un problème de format par
exemple :
avec le nombre 0,978 c'est ok mais si j'ai 1,060 le nombre importé
appparait
sous 1060.
J'ai tenté de mettre
Selection.NumberFormat = "#,#0.00" mais le nombre importé est 1060,00 ou
bien
Selection.NumberFormat = "#,000" le nombre apparait bien en 1,060 mais sa
valeur est 1060.
Les nombre < 1 (ceux là sont en format texte) apparaissent correctement
ainsi que leur valeur, mais les nombres > 1 peuvent apparaitre
correctement
ave le NumberFormat = "#,000" mais leur valeur est fausse!
Comment faire?





Publicité
Poster une réponse
Anonyme