Substring like dans Excel....

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

G

goldorax113

Guest
Bonjour à tous,

j'ai une chaine de caractères "3h43m08s" que je voudrais transformer en date compréhensible par excel. Comment puis-je faire ?
Je n'ai pas trouvé d'equivalant au substring que l'on trouve dans certains langages...

Merci pour votre aide 🙂
 
Re : Substring like dans Excel....

Bonjour,

Tu voulais dire en format heure compréhensible par Excel ? Utilise la formule suivante pour transformer la chaîne contenue dans la cellule A1 :

Code:
=SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;"h";":");"m";":");"s";"")*1

Met la cellule de la formule au format heure.
 
Dernière édition:
Re : Substring like dans Excel....

Bonsoir


Code:
Sub macro()
Dim d$
Dim MyTime
Dim h As Long
Dim m As Long
Dim s As Long
d = "3h43m08s"
h = InStr(1, d, "h")
m = InStr(1, d, "m")
s = InStr(1, d, "s")
strH = CDbl(Mid(d, 1, h - 1))
strM = CDbl(Mid(d, h + 1, 2))
strS = CDbl(Mid(d, m + 1, 2))
MyTime = TimeSerial(strH, strM, strS)
MsgBox MyTime
End Sub

A+
 
Re : Substring like dans Excel....

Bonjour Raja, Bonjour PierreJean, Bonjour Goldorak,

La formule de Raja est parfaite, sauf si certaines cellules ne contiennent pas de "h".
Est-ce le cas ?

Le code de PierreJean est surement excellent, mais je ne peux toujours pa ouvrir les zip alors... 😉
 
Re : Substring like dans Excel....

Re

Pleure pas Tototiti 🙂 🙂

Code:
Function trad_date(texte As String)
x = InStr(texte, "h")
Heures = CInt(Left(texte, x - 1))
Minutes = CInt(Mid(texte, x + 1, 2))
Secondes = CInt(Mid(texte, x + 4, 2))
trad_date = Heures / 24 + Minutes / 1440 + Secondes / 86400
End Function

Elle contraint a une forme 00h00m00s
en bleu : Optionnel

Edit: Salut a tous
 
Re : Substring like dans Excel....

Bonjour tout le monde,

une incursion dans le monde de la formule.
Quand je vois celle de raja, je crois que je vais retourné au VBA vite fait 😀

Code:
=TEMPSVAL(GAUCHE(A1;TROUVE("h";A1)-1)&":"&STXT(A1;TROUVE("h";A1)+1;2)&":"&STXT(A1;TROUVE("m";A1)+1;2))
N'est-ce pas?😱
 
Re : Substring like dans Excel....

Re


Mon code VBA naquit uniquement pour "3h43m08s"

Pas le temps ce soir d'aller plus loin que 03:43:08 😉

EDiTION: en m'inspirant de Raja
Code:
Sub macro()
Dim d$
Dim MyTime
Dim h As Long
Dim m As Long
Dim s As Long
d = "3h43m08s"
d = Left(d, Len(d) - 1)
d = Replace(Replace(d, "h", ":"), "m", ":")
MyTime = _
TimeSerial(Split(d, ":")(0), _
    Split(d, ":")(1), _
    Split(d, ":")(2))
MsgBox MyTime
End Sub

A+
 
Dernière édition:
Re : Substring like dans Excel....

J’ai omis de le préciser, mais toutes les heures sont au format 00h00m00s.
Donc toutes vos formules doivent m'aller, j'ai l'embarras du choix !
Merci à tous pour votre aide !
A+
 
- 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
2
Affichages
475
Réponses
18
Affichages
611
Réponses
5
Affichages
290
Réponses
3
Affichages
234
Retour