Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

problème nombres stockés en tant que texte

  • Initiateur de la discussion Initiateur de la discussion jip31
  • 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 !

J

jip31

Guest
bonjour

dans le fichier joint, je mets en forme un CSV pour récupérer les données vers Excel et mettre un graphique à jour automatiquement
initialement les décimales dans le CSV sont séparées par un point, les points sont remplacés par une virgule via le code mais le problème c est que les nombres copiés vers excel sont stockés en tant que texte
du coup mon graphe ne se met pas à jour 😡
que pourrais je rajouter dans mon code pour que mes décimales soient des chiffres et non du texte?
merci de votre aide
 

Pièces jointes

Re : problème nombres stockés en tant que texte

Bonjour jip,

avec ce code:
Code:
Sub CSV()
Application.ScreenUpdating = False


    'Tempdb_J'
    Workbooks.OpenText Filename:= _
        "\\TO05RES03\rossejp$\Applications\CASTOR\Indicateurs CASTOR\Graphes\CSV\201207_IndicExploitTempdb_J.csv" _
        , Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier _
        :=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True _
        , Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1) _
        , Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
        Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15 _
        , 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1), Array(21, 1), _
        Array(22, 1), Array(23, 1), Array(24, 1), Array(25, 1), Array(26, 1), Array(27, 1), Array( _
        28, 1), Array(29, 1), Array(30, 1), Array(31, 1), Array(32, 1)), TrailingMinusNumbers _
        :=True
    Range("A1:AF4").Select
    Selection.Copy
    Windows("TEST.xls").Activate
    Sheets("DATA").Select
    Range("A5").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Range("B6:AF8").Select
    Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
    End With
    
' ci-dessous transformation au format numérique
Dim cellule As Range
For Each cellule In Range("E6:AF8")
 cellule = cellule * 1
Next cellule
    
    Windows("201207_IndicExploitTempdb_J.csv").Close
    
   
    
Application.ScreenUpdating = True

End Sub

à+
Philippe
 
Re : problème nombres stockés en tant que texte

Bonjour à tous,

un début de piste, j'ai mis le chiffre 1 en "A1"


JHA
 
Re : problème nombres stockés en tant que texte

Bonjour Jip, bonjour le forum,

Essaie comme ça :
Code:
Sub CSV()
Dim cel As Range 'décalre la variable cel
Application.ScreenUpdating = False
    'Tempdb_J'
    Workbooks.OpenText Filename:= _
        "[URL="file://\\TO05RES03\rossejp$\Applications\CASTOR\Indicateurs"]\\TO05RES03\rossejp$\Applications\CASTOR\Indicateurs[/URL] CASTOR\Graphes\CSV\201207_IndicExploitTempdb_J.csv" _
        , Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier _
        :=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True _
        , Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1) _
        , Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
        Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15 _
        , 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1), Array(21, 1), _
        Array(22, 1), Array(23, 1), Array(24, 1), Array(25, 1), Array(26, 1), Array(27, 1), Array( _
        28, 1), Array(29, 1), Array(30, 1), Array(31, 1), Array(32, 1)), TrailingMinusNumbers _
        :=True
    Range("A1:AF4").Select
    Selection.Copy
        Windows("TEST.xls").Activate
    Sheets("DATA").Select
    Range("A5").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Range("B6:AF8").Select
    Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
    End With


    For Each cel In Range("G6:AF8") 'boucle sur toutes les cellules de la plage G6:AF8
        cel.Value = cel.Value * 1 'multiplie la valeur de la cellule par 1
    Next cel 'prochaine cellule de la boucle


    Windows("201207_IndicExploitTempdb_J.csv").Close
Application.ScreenUpdating = True
End Sub

[Édition]
Bonjour JHA, Philippe (mort de rire), on s'est croisé
 
- 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
863
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…