Microsoft 365 Apostrophe, Texte nombre en nombre, Excel Online

Alextazie

XLDnaute Nouveau
Bonjour,

Je me retrouve dans un cas de figure assez particulier,
Effectivement, pour des raison professionnelle je suis obligé de passer par Excel 365 online, ce qui déjà me contraint au niveau de plusieurs options qui sont présentes dans la version app.

Concernant mon problème,
les données de ma feuille de calcul proviennent d'un office Forms. Dans cet office Forms il y a une question à choix qui définie plusieurs tarifs.
Lorsque les données sont collectées par Excel ce tarif est transformé en texte nombre ( c'est à dire que sur la cellule on voit le nombre normal, mais lorsqu'on clique dessus on peut voir dans la barre de formule qu'une apostrophe a été ajoutée précédant les chiffres. )
Il faut savoir que même si je paramètre la colonne correspondante en nombre ou en comptabilité, il ne se passe rien, car chaque cellule contient cet apostrophe.
Mon problème étant que je récupère par la suite cette colonne dans un tableau croisé dynamique pour en faire la somme ( hors vous l'aurez compris, ces nombres étant considérés comme du texte, mon TDC reste à 0 ).

Et il faut savoir qu'il faudrait que cette colonne soit automatisée, car les données récoltées ne sont pas fixe ( des lignes doivent s'ajouter par la suite ).
Dans la feuille d'exemple vous pourrez constater que lorsque je lève manuellement cet apostrophe dans la cellule, le paramètrage de la colonne fonctionne correctement.
Mais je ne peux pas le faire pour chaque cellule individuellement pour une raison de temps.
J'ai tenté de passer par rechercher/remplacer mais il ne détecte pas l’apostrophe dans ces cellules.
Peut-être existe-il un script qui pourrait automatiser cet action de suppression d'apostrophe ?

Cela fait déjà une semaine que suis bloqué la dessus, toutes aides seraient la bienvenue.
Mille Mercis.
 

Pièces jointes

  • help.xlsx
    21.5 KB · Affichages: 4

vgendron

XLDnaute Barbatruc
Hello

effectivement j'ai aussi eu ce problème récemment:
l'appostrophe est visible, mais non détectable par excel
pour en etre sur, j'ai tapé : =gauche (I2;1) ==> ce qui me retourne le premier chiffre...

j'ai "contourné" le pb sans en connaitre la cause réelle..
Un essai avec ce code
1) remplace la virgule par le separateur numérique défini sur le pavé numérique
(chez moi, ca remplace la virgule par le .
2) ensuite MET un format nombre

VB:
Sub Macro1()
'
    Range("Tableau2[Prix formation]").Select
    Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
   Selection.NumberFormat = "#0.00"
  
End Sub
 
Dernière édition:

Hasco

XLDnaute Barbatruc
Bonjour,

La macro suivante supprime les PrefixCharacter des cellules.

VB:
Sub DePrefixer()
    Dim c As Range
    For Each c In ThisWorkbook.Sheets("Formulaire-Inscription").Range("Tableau2[Prix formation]").Cells
        If c.PrefixCharacter <> "" And (IsDate(c.Text) Or IsNumeric(c.Text)) Then c.Value = CDbl("" & c.Text)
    Next
End Sub

Cordialement
 

Alextazie

XLDnaute Nouveau
Hello

effectivement j'ai aussi eu ce problème récemment:
l'appostrophe est visible, mais non détectable par excel
pour en etre sur, j'ai tapé : =gauche (I2;1) ==> ce qui me retourne le premier chiffre...

j'ai "contourné" le pb sans en connaitre la cause réelle..
Un essai avec ce code
1) remplace la virgule par le separateur numérique défini sur le pavé numérique
(chez moi, ca remplace la virgule par le .
2) ensuite MET un format nombre

VB:
Sub Macro1()
'
    Range("Tableau2[Prix formation]").Select
    Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
   Selection.NumberFormat = "#0.00"
 
End Sub
Merci beaucoup, mais comme je l'ai précisé je ne peux pas utiliser de macro sur la version Excel Web, les scripts utilisés sont en Js
 

Alextazie

XLDnaute Nouveau
Bonjour,

La macro suivante supprime les PrefixCharacter des cellules.

VB:
Sub DePrefixer()
    Dim c As Range
    For Each c In ThisWorkbook.Sheets("Formulaire-Inscription").Range("Tableau2[Prix formation]").Cells
        If c.PrefixCharacter <> "" And (IsDate(c.Text) Or IsNumeric(c.Text)) Then c.Value = CDbl("" & c.Text)
    Next
End Sub

Cordialement
Merci beaucoup, mais comme je l'ai précisé je ne peux pas utiliser de macro sur la version Excel Web, les scripts utilisés sont en Js
 

Discussions similaires

Réponses
3
Affichages
167

Statistiques des forums

Discussions
303 639
Messages
2 012 829
Membres
219 429
dernier inscrit
Remy.d