Bonjour à tous,
Je me heurte à un problème enfin plutôt deux.
Le premier est que je souhaite supprimer tous les caractères autres que des chiffres dans la colonne A de mon fichier.
J'aurais bien la solution de JP14 :
Mais elle ne fait pas le remplacement automatique dans la colonne A il faut sélectionner la zone et le résultat renvoyé n'est pas sous forme de nombre.
Pour mon deuxième problème j'ai bien essayé avec l'enregistreur de macro, cela fonctionne pas mal sauf pour les cases où il manque un 0 dans les heures.
Auriez-vous une piste à me donner pour que je puisse trouver la solution à mes problèmes.
Merci d'avance !
Je me heurte à un problème enfin plutôt deux.
Le premier est que je souhaite supprimer tous les caractères autres que des chiffres dans la colonne A de mon fichier.
Individu 7909: NOM1, PRENOM1 | Info1 | 1346 | 230h23'43 | 0h07'09 | 0h56'76 | 0h06'97 | 67,5 | Info9 | 7977 | 47h59'75 | 0h09'90 | 0h57'97 | 0h09'59 | 90,9 |
Individu 7902: NOM2, PRENOM2 | Info2 | 2119 | 230h53'33 | 0h05'07 | 0h74'77 | 0h04'77 | 76,4 | Info7 | 9097 | 77h45'05 | 0h00'56 | 0h04'75 | 0h00'47 | 77,4 |
Individu 7920: NOM3, PRENOM3 | Info3 | 1872 | 253h53'54 | 0h05'06 | 0h59'00 | 0h05'77 | 66,7 | Info4 | 7776 | 59h06'54 | 0h07'47 | 0h75'49 | 0h07'94 | 97,9 |
Individu 7927: NOM4, PRENOM4 | Info4 | 2216 | 245h22'23 | 0h07'56 | 0h77'70 | 0h07'47 | 66,9 | Info5 | 9797 | 47h79'77 | 0h07'79 | 0h57'57 | 0h09'77 | 79,9 |
Individu 5977: NOM5-COMPOSE5, PRENOM5 | Info5 | 349 | 33h25'43 | 0h06'76 | 0h49'09 | 0h06'99 | 66,7 | Info6 | 779 | 9h40'54 | 0h07'45 | 0h06'97 | 0h07'79 | 77,7 |
Individu 6975: NOM6 COMPOSE6, PRENOM6 | Info6 | 1160 | 233h34'23 | 0h07'04 | 0h40'59 | 0h05'79 | 65,9 | Info7 | 7749 | 77h75'47 | 0h07'45 | 0h75'79 | 0h07'97 | 76 |
J'aurais bien la solution de JP14 :
VB:
Dim val1 As String
Dim i As Long
Dim cell As Range
Dim oldCalculation As Variant '
Dim reponse As Variant
oldCalculation = Application.Calculation
Application.Calculation = xlCalculationManual
'expression.InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextId, Type)
On Error GoTo suite
Set reponse = Application.InputBox(Prompt:="Veuillez sélectionner la zone à convertir", Type:=8, Default:="")
Application.ScreenUpdating = False 'gele l'ecran
Application.EnableEvents = False
Application.DisplayAlerts = False 'interdit les messages d'avertissements
For Each cell In reponse
If cell = "" Then
Else
val1 = ""
For i = 1 To Len(cell)
If Asc(Mid(cell, i, 1)) > 47 And Asc(Mid(cell, i, 1)) < 59 Then val1 = val1 & Mid(cell, i, 1)
Next
cell = val1
End If
Next cell
fin:
Application.ScreenUpdating = True
Application.EnableEvents = True
Application.Calculation = oldCalculation
'Application.DisplayAlerts = True ' par défaut
Exit Sub
suite:
Resume fin
End Sub
Mais elle ne fait pas le remplacement automatique dans la colonne A il faut sélectionner la zone et le résultat renvoyé n'est pas sous forme de nombre.
Pour mon deuxième problème j'ai bien essayé avec l'enregistreur de macro, cela fonctionne pas mal sauf pour les cases où il manque un 0 dans les heures.
VB:
Sub Remplacerhetguillemets()
'
' Macro2 Macro
'
'
Sheets("Résultat voulu").Select
Columns("B:O").Select
Selection.Replace What:="'", Replacement:=":", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2
Selection.Replace What:="h", Replacement:=":", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2
Selection.NumberFormat = "[$-x-systime]h:mm:ss AM/PM"
Range("F4").Select
ActiveCell.FormulaR1C1 = "0:77:70"
Range("F5").Select
Sheets("Source").Select
End Sub
Auriez-vous une piste à me donner pour que je puisse trouver la solution à mes problèmes.
Merci d'avance !