Effectuer la convertion d'une cellule si elle contient #

Résolu/Fermé
elglouton Messages postés 189 Date d'inscription dimanche 19 avril 2009 Statut Membre Dernière intervention 11 novembre 2022 - 12 févr. 2013 à 12:54
elglouton Messages postés 189 Date d'inscription dimanche 19 avril 2009 Statut Membre Dernière intervention 11 novembre 2022 - 12 févr. 2013 à 13:34
Bonjour,

Je tente de mettre en forme des données brute dans un classeur excel mais je ne parviens pas à faire fonctionner mon code.
Y à t'il un problème d'écriture ? la valeur # est bien pressente mais n'est pas pris en compte par le If

Un bout du code

Sub Macro7()

Dim cellule As String
Dim c, i As Variant

For i = 300 To Range("A65536").End(xlUp).Row
c = Cells(i, 1).Address

If Range(c).Value = "*#*" Then

Range(c).Select
Selection.TextToColumns Destination:=Range(c).Offset(i, 0), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1)), _
        TrailingMinusNumbers:=True

Else

End If
Next i
End Sub


Le type de données

+PHASE 2 = DEPRESSURISATION MODULEE
+TEMPS TP TE1 TE2 TE8
+ 0:00 1.03 24.9 46.8 99.2
# 0:10 1.00 25.0 47.5 100.0
# 0:20 0.95 25.5 48.2 100.7
# 0:30 0.90 25.8 48.7 99.5
# 0:40 0.85 26.2 49.4 99.5
@ 0:50 0.80 26.6 50.1 100.9
# 1:00 0.75 26.7 50.7 100.1
# 1:10 0.71 26.9 51.4 99.3
# 1:20 0.67 27.3 52.0 99.9
# 1:30 0.64 27.4 52.6 101.0
# 1:40 0.60 27.5 53.4 100.0
@ 1:50 0.55 28.4 54.1 99.4
# 2:00 0.50 30.0 54.7 99.8
# 2:10 0.45 30.9 55.1 100.9
# 2:20 0.41 31.5 55.6 100.2
# 2:30 0.38 31.9 55.9 99.5

En esperant avoir été clair.

A voir également:

2 réponses

via55 Messages postés 14474 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 19 septembre 2024 2 728
12 févr. 2013 à 13:08
Bonjour

Peut être faudrait il mieux tester si # se trouve dans la chaine

if InStr(Range(c),"#") >0 then

Cdlmnt
1
elglouton Messages postés 189 Date d'inscription dimanche 19 avril 2009 Statut Membre Dernière intervention 11 novembre 2022 1
12 févr. 2013 à 13:34
Merci pour cette réponse des plus rapide je viens de la tester et ça à l'air de tourner.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
12 févr. 2013 à 13:02
Bonjour,

Pour vérifier la présence d'un caractère dans une chaîne, j'utiliserais perso la fonction Instr. Comme ceci :

If Instr(Range(c).Value, "#") <> "" Then MsgBox Instr(Range(c).Value, "#") 


0