Bonjour! J'ai un tout petit problème avec la macro que j'ai créé. Cette macro sert à lancer un programme batch, qui lui-même extrait des métadonnées de fichiers vidéos pour les inscrire dans des fichiers texte, pour qu'ensuite la macro récupère ces informations et les inscrive dans des cellule. Tout fonctionne parfaitement, sauf un petit détail.
Une de ces informations est la durée du fichier vidéo. Son format est le suivant: 00:00:00,00
La donnée est bien récupérée par la macro et inscrite dans la cellule. Cependant, même si la cellule est bien en format heure, la donnée est considérée comme du texte jusqu'à ce que je fasse un double-clic sur la cellule. C'est très problématique. J'ai essayé d'ensuite copier la cellule puis de la coller, sans résultat. J'ai aussi essayé de faire correspondre le format de cellule personnalisé avec le format de la donnée provenant du fichier texte ("hh:mm:ss,00" plutôt que "h:mm:ss,00"), sans résultat.
Alors, comment puis-je modifier mon code de façon à ce que la valeur soit automatiquement considérée comme une heure sans action de l'utilisateur?
Merci à ceux qui voudront m'aider!
Sub metadonnees()
'
' Macro1 Macro
'
Dim strNomFichier As String
Dim strFichierExiste As String
Dim fso, f, noprod
noprod = Cells(ActiveCell.Row, "I").Value
If Not noprod = Replace(noprod, ";", "") Then Exit Sub
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("P:\dossier\prog\cherchereg\NOPROD.txt", 2, True)
f.write (noprod)
f.Close
'
RetVal = Shell("P:\dossier\prog\cherchereg.bat", 1)
'
Reponse = MsgBox("---", vbOKCancel + Apparence + TypeDeBox, "Recherche des métadonnées: " & noprod)
Select Case Reponse
Case vbCancel
Exit Sub
End Select
''''''''''''''''''''''''''''
strNomFichier = "P:\dossier\prog\cherchereg\txt\duree.txt"
strFichierExiste = Dir(strNomFichier)
If Not strFichierExiste = "" Then
Open "P:\dossier\prog\cherchereg\txt\duree.txt" For Input As #1
Line Input #1, Data
Cells(ActiveCell.Row, "AL").Value = Data
Cells(ActiveCell.Row, "J").Value = Data
Close #1
End If
'''''''''''''''''''''''''''''
strNomFichier = "P:\dossier\prog\cherchereg\txt\resolution.txt"
strFichierExiste = Dir(strNomFichier)
If Not strFichierExiste = "" Then
Open "P:\dossier\prog\cherchereg\txt\resolution.txt" For Input As #1
Line Input #1, Data
Cells(ActiveCell.Row, "AM").Value = Data
Close #1
End If
End Sub