Avatar billede koden Novice
06. juli 2008 - 14:51 Der er 8 kommentarer og
1 løsning

regne ud hvor mange min. mellem 2 tider

Jeg har et excell med 3 felter
A1=1200
B1=1210
C1=de anatal minutter der er mellem 1200 og 1210.

Men hvordan får jeg i C1 lavet en beregning der selv kan regne ud hvad der er i minutter mellem 12-1210?

Andre gange er det jo andre tidspkt. som f.eks. 1000-1310 som jo er 190 min.

Formatet i A1 og B1 er lige meget. det kan være med eller uden kolon,punktum o.s.v
bare jeg kan få en minut udregning i C1 felt.
Avatar billede mugs Novice
06. juli 2008 - 14:56 #1
Avatar billede koden Novice
06. juli 2008 - 14:58 #2
OG når jeg taster kl. 0900 ind så skriver den kun 900.
kan jeg vælge format 00:00 og så bare skrive 0900 og den vil selv sætte : ind det rigtige sted, eller skal jeg taste kolon?
Avatar billede koden Novice
06. juli 2008 - 15:01 #3
tak...jeg skal vist have fat i denne formel:
=B1-A1+(A1>B1).
Avatar billede mugs Novice
06. juli 2008 - 15:06 #4
Formater dine celler kom klokkeslet og indtast kolon.
Avatar billede koden Novice
06. juli 2008 - 15:17 #5
Du mener jeg ikke slipper for at taste kolon? jeg har formateret til klokkeslet..
Ok troede blot den kunne gætte at når jeg skrev 1000, så skulle den selv sætte kolon ind imellem, når den var klokkeslet formateret.
Avatar billede perhol Seniormester
06. juli 2008 - 19:31 #6
Jeg bruger en VBA-kode der laver en almindelig 3- eller 4 cifret indtastning om til tidsformat.
Den kræver blot at der er defineret et navngivet område og at man IKKE bruger skilletegn (kolon) i indtastningen.
Interesseret?
Avatar billede koden Novice
06. juli 2008 - 20:10 #7
ja. Alt hvad der kan løse mit "problem".. :-)
Jeg ved bare ikke noget om VBA....
Avatar billede perhol Seniormester
07. juli 2008 - 06:32 #8
"ved bare ikke noget om VBA...." - Det var jo ikke så godt men vi må jo se på det.

Koden du ser nederst i denne kommentar kræver at de celler du indtaster tider i (i dit eksempel A1 og B1) navngives til "Tid" samt at de har formatet [t]:mm.
Du formaterer dem ved at markere cellerne og trykke på menuen [Format], vælge [Celler], fanen [Tal], punktet [Brugerdefineret].
Her indsætter du "[t]:mm" (uden anførelsestegn) i rammen nedenunder "Type:".
Det valgte område skulle stadig være markeret. Lige oven over kolonnetitlerne (A1... osv.) er der en hvid ramme hvor der står A1. Den klikker du i og skriver "Tid" (uden anførelsestegn). Det giver det markerede område navnet "Tid".
Højreklik derefter på arkets fane nederst i Excel, hvis du ikke har gjort noget for at ændre fanens navn er det "Ark1". Vælg punktet [Vis programkode].
VBA Editoren åbner, i venstre side skulle du en skakt der indeholder navnene på evt. indlæste tilføjelser samt navnet på din regnearks fil. Hvis ikke du ser den, så klik på menuen [View], punktet [Project explorer].
Klik på punktet "Ark1" i skakten. Evt. skal du først udvide ved at trykke på plustegnet, så du ser "Ark1".
I højre side er der et stort område med 2 rammer over hvor der står "(General)" og "(Declarations)". I det store område skal du kopiere nedenstående kode ind. De 3 første linjer er kommentarer.

Herunder er koden:

' Denne Subrutine ændrer en alm. 3 eller 4 cifret indtastning til tidsformat
' F.eks. 1430 til 14:30 eller 700 til 7:00
' Cellerne i området (Tid) skal dog være formateret til tidsformat [t]:mm
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    On Error GoTo Slut
    Application.EnableEvents = False
    If Not Intersect(Target, Range("Tid")) Is Nothing Then
        If IsNumeric(Target.Value) Then
            If Target.Value Mod 1 = 0 And Target.Value > 0 Then
                If Len(Target.Value) >= 2 And Len(Target.Value) <= 4 Then
                    iTime = Left(Format(Target, "0000"), 2)
                    iMinut = Right(Format(Target, "0000"), 2)
                    If iTime < 24 And iMinut <= 59 Then
                        Target = iTime / 24 + iMinut / 24 / 60
                    Else
                        Target = ""
                    End If
                    Target.NumberFormat = "[t]:mm"
                Else
                    Target.Value = ""
                End If
            Else
                Target.Value = ""
            End If
        Else
            Target.Value = ""
        End If
    End If
Slut:
    Application.EnableEvents = True
End Sub

Det var det hele, Nu skulle du bare kunne indtaste 3 eller 4 tal i hver celle, så laver koden dine indtastninger om til tidsformat.

Jeg er først på eksperten igen engang i eftermiddag.
Avatar billede koden Novice
06. august 2008 - 10:17 #9
UPS... den havde jeg glemt. Jeg sprang felt over da det var noget jeg skulle aflevere. Vil dog kigge på det alligevel, da jeg nok skal bruge det igen. Men send et svar perhol og så må jeg fordele...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester