• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Kan het eenvoudiger?

Status
Niet open voor verdere reacties.

shaun

Nieuwe gebruiker
Lid geworden
30 okt 2003
Berichten
1
Ik heb een formule bedacht (die werkt) waarvan ik denk dat het eenvoudiger kan. Maar ik kan er niet uitkomen hoe of wat.
De bedoeling is dat vanaf internet een lijst gekopieerd wordt en dat deze formule de volgende uitkomst geeft.

Gegeven cel (e202):
85h 43' 29''

Mijn oplossing (die werkt) :
=(TEKST.SAMENVOEGEN(ALS(ISFOUT(RECHTS(DEEL($E202;1;LENGTE(E202)-10);3));0;RECHTS(DEEL($E202;1;LENGTE(E202)-10);3));":";RECHTS(DEEL($E202;1;LENGTE(E202)-6);2);":";RECHTS(DEEL($E202;1;LENGTE(E202)-2);2)))+(TIJD(0;0;0))

Uitkomst is :
85:43:29

Problemen waar rekening mee gehouden zou moeten worden:
Uitkomst moet in de cel geconverteerd worden als tijdnotatie
Hij moet hem ook kunnen lezen zonder 85h maar ook als 123h vandaar de lengte en de ISFOUT

Wie heeft hier een beter/makkelijker alternatief voor?

MVG,
Shaun
 
Shaun,

Ik weet niet of je er wat aan heeft maar, zo leest hij wel of het 85h is of dat het 185h is.
PHP:
=ALS(VIND.SPEC(" ";E202;1)=4;LINKS(E202;2);LINKS(E202;3))

Ik heb het met 3 hulpkolommen gedaan, kun je misschien wel in een maken.
Zie het bestandje
 

Bijlagen

  • Tijd om rekenen.xlsx
    11,4 KB · Weergaven: 29
Laatst bewerkt:
Probeer deze eens
PHP:
=SUBSTITUEREN(SUBSTITUEREN(SUBSTITUEREN(SUBSTITUEREN($E202;"'";":");"::";"");" ";"");"h";":")
 
Als de oplossing altijd een formule moet zijn, zijn hierboven geopperde oplossingen
natuurlijk prima. Het kan eventueel ook met een kleine VBA-functie.
Groetjes, Ron.
 

Bijlagen

  • TijdConversiedmvVBA.xls
    30,5 KB · Weergaven: 38
Hieronder de code van peenvogel in #4.

Code:
Function Ctijd(rng As range) As Variant
x = rng.Value

    For i = 1 To Len(x)
    a = Mid(x, i, 1)
        If IsNumeric(a) = True Then
        b = b & a
        End If
    Next i
        
        c = Len(b)
        
        Select Case c
        Case 3
        strOut = Mid(b, 1, 1) & ":" & Mid(b, 2, 2)
        Case 4
        strOut = Mid(b, 1, 2) & ":" & Mid(b, 3, 2)
        Case 6
        strOut = Mid(b, 1, 2) & ":" & Mid(b, 3, 2) & ":" & Mid(b, 5, 2)
        Case 7
        strOut = Mid(b, 1, 3) & ":" & Mid(b, 4, 2) & ":" & Mid(b, 6, 2)
        End Select

Ctijd = strOut
End Function
 
Nog eentje waarmee je de tijd als getal terug krijgt en er ook mee kan rekenen. De celeigenschappen even op :mm:ss zetten

Code:
=SUBSTITUEREN(SUBSTITUEREN(SUBSTITUEREN(E202;"' ";":");"''";"");"h ";":")*1
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan