Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Formatera datum

Postades av 2003-05-27 20:26:45 - Nicklas Grahn, i forum microsoft office, Tråden har 17 Kommentarer och lästs av 1586 personer

Hej jag får från ett annat program tid å datum som ser ut såhär i exel 20030416123909000

jag skulle vilja ha det i ÅÅÅÅ-MM-DD och i en anna cell TT:MM:SS

jag har provar det mesta typ format anpassa och ####\-##\-## ##\:##\:## eller ÅÅÅÅ-MM-DD TT:SS men inte nått funkar, nu funderar jag på att man ska skriva ett litet vb skript som gör allt med typ mid() å sedan delar upp det i rätt cell, men jag har inte skrivit nått i vba, å härsitter jag nu med ett öppet kod fönster å vet inte vart jag ska börja

/Nicklas G


Svara

Sv: Formatera datum

Postades av 2003-05-28 10:44:36 - Martin Adrian

Först, din tid verkar innehålla tusendels sekunder. Tror inte att excels datumformat kan hatera det. Om du inte behöver tusendelarna kan du använda följande formel (förutsätter att din tid finns lagrad som sträng i cell A1)
=DATUM(VÄNSTER(A1;4);EXTEXT(A1;5;2);EXTEXT(A1;7;2))+KLOCKSLAG(EXTEXT(A1;9;2);EXTEXT(A1;11;2);EXTEXT(A1;13;2))

Om du behöver tusendelarna så kan du använda datumformatet för datumdelen men du måste lagra tiden som ett vanligt tal (vilket gör det lite krångligare att formatera)


Svara

Sv: Formatera datum

Postades av 2003-05-28 10:52:46 - Daniel Åsberg

Testa den hära:
<code>
####-##-##_ ##\:##\:##\:###
</code>


Svara

Sv: Formatera datum

Postades av 2003-05-28 11:59:53 - Nicklas Grahn

Detta funkade ju ####-##-##_ ##\:##\:##\:### men hur mycket stökigare blir det om jag vill ha tiden i en annan kolum ???

Och kan man välja bort tusendelaran ???

Är så satans dålig på exel *suck*

Tackar för ett bra svar jag fick, nu slipper jag ju vbs =)


Svara

Sv: Formatera datum

Postades av 2003-05-28 12:58:54 - Daniel Åsberg

Få bort tusendelarna:
<code>
####-##-##_ ##\:##\:##
</code>

Att få tiden i en annan kolumn har jag ingen bra lösning på. Bara att du kopierar över allt till en egen kolumn.

/D


Svara

Sv: Formatera datum

Postades av 2003-05-28 13:36:42 - Ann Kapborg

Om du inte skyr makron alltför mycket har du ett med hårdkodade cellreferenser här:

Sub Formatera_datum()

Dim strHarang As String
Dim lngDatum As Long
Dim dblTid As Double
Dim lngTms As Long
Dim strDatum As String
Dim strTid As String

Range("A1").Activate
Selection.NumberFormat = "0"
strHarang = ActiveCell.Text
lngDatum = Left(strHarang, 8)
dblTid = Right(strHarang, 9)
intTms = Left(dblTid, 6)
strDatum = Left(lngDatum, 4) & "-" & Mid(lngDatum, 5, 2) & "-" _
& Right(lngDatum, 2)
strTid = Left(intTms, 2) & ":" & Mid(intTms, 3, 2) & ":" & Right(intTms, 2)

Range("B1").Activate
Selection.NumberFormat = "yyyy-mm-dd;@"
ActiveCell.FormulaR1C1 = strDatum

Range("C1").Activate
Selection.NumberFormat = "hh:mm:ss;@"
ActiveCell.FormulaR1C1 = strTid

End Sub

/ak


Svara

Sv: Formatera datum

Postades av 2003-05-28 14:55:13 - Nicklas Grahn

Annk detta ser ju inte fel ut men problemet är att jag vet inte hur många poster det rörsej om men skulle tro krin ett par tusen poster, så jag måste ha nått dunamiskt som kan räkna hurmånga rader och sen gör flytten av tiden på alla rader =)

Hade jag fått bestämma så hade jag laggt in det i acces istället =)


Svara

Sv: Formatera datum

Postades av 2003-05-28 17:05:32 - Martin Adrian

Mssförstod dig lite. Jag trodde att du ville ha datumet i Excel format så att du kunde använda det i beräkningar mm.

Om du bara vill formatera det så gör så här
1. Sätt formatet på den kolumn där datumet finns till "####-##-## " (tre blanktecken på slutet)
2. i kolumnen brevid ange formeln =rest(a1;1e9) och formatet "##\:##\:##\:###"

eller "##\:##\:## " (ett blanktecken) för att ta bort tusendelar


Svara

Sv: Formatera datum

Postades av 2003-05-28 17:09:35 - Thommy Lantz

Detta gör jobbet dynamiskt

Man kan endera starta i markerad cell
då används detta
<code>
iStartRow = ActiveCell.Row
iStartCol = ActiveCell.Column
</code>

eller också hårdkoda startcell så här

<code>
iStartRow = 1
iStartCol = 1
</code>

<code>
Sub Formatera_datum()

Dim strHarang As String
Dim lngDatum As Long
Dim dblTid As Double
Dim lngTms As Long
Dim strDatum As String
Dim strTid As String
Dim iLastRow As Long
Dim iStartRow As Long
Dim iStartCol As Long
Dim i As Long

'Markerad cell som startcell
iStartRow = ActiveCell.Row
iStartCol = ActiveCell.Column
'Startcell satt till A1
iStartRow = 1
iStartCol = 1

iLastRow = Cells(65536, iStartCol).End(xlUp).Row

For i = iStartRow To iLastRow

With Cells(i, iStartCol)
.NumberFormat = "0"
strHarang = .Text
lngDatum = Left(strHarang, 8)
dblTid = Right(strHarang, 9)
lngTms = Left(dblTid, 6)
strDatum = Left(lngDatum, 4) & "-" & Mid(lngDatum, 5, 2) & "-" _
& Right(lngDatum, 2)
strTid = Left(lngTms, 2) & ":" & Mid(lngTms, 3, 2) & ":" & Right(lngTms, 2)

With .Offset(0, 1)
.NumberFormat = "yyyy-mm-dd;@"
.FormulaR1C1 = strDatum
End With

With .Offset(0, 2)
.NumberFormat = "hh:mm:ss;@"
.FormulaR1C1 = strTid
End With

End With
Next i

End Sub

</code>

obs ingen felhantering i denna kod



Svara

Sv: Formatera datum

Postades av 2003-05-29 17:26:05 - Nicklas Grahn

Nää du har rätt datumet ska kunan användas för att kunna bygga diagram. vi ska nämligen se hur många in å ut passeringar det sker mellan vilka tider på dygnet, för att kunna ta beslut om öpet tider =)


Svara

Sv: Formatera datum

Postades av 2003-05-29 21:22:14 - Thommy Lantz

Med dessa siffror i kolumn A1:A15

20030416123909000

får jag ut 2003-04-16 i kolumn B
och 12:39:00 i kolumn C
med den kod som jag modifierade


Som jag skrev så finns det ingen felkod som tar hand om eventuella
fel .

På vilken rad i koden stannar det för dig

Fortsätt gärna i den här tråden så kanske
fler kan hjälpa till

Det kan också hjälpa om du talar om vilken
version av excel du använder


Svara

Sv: Formatera datum

Postades av 2003-06-02 08:04:42 - Ann Kapborg

Om du vill ha dem i Access, varför inte importera kalkylbladet dit och sedan lägga tillbaka dem i Excel när du bearbetat?

/annK


Svara

Sv: Formatera datum

Postades av 2003-06-09 14:07:49 - Thommy Lantz

Här har du en variant med Loop istället för For Next

Den loopar tills den hittar första tomma cell
Den kanske fungerar bättre

Har råkat ut för någon gång att excel inte känner av
att det finns data i cellerna och då fungerar inte
SHIFT PIL NED eller UPP för att hoppa till sista cell med data

<code>
Sub Formatera_datum_DO()

Dim strHarang As String
Dim lngDatum As Long
Dim dblTid As Double
Dim lngTms As Long
Dim strDatum As String
Dim strTid As String
Dim iStartRow As Long
Dim iStartCol As Long
Dim i As Long

'Markerad cell som startcell
iStartRow = ActiveCell.Row
iStartCol = ActiveCell.Column
'Startcell satt till A1
iStartRow = 1
iStartCol = 1

i = iStartRow
Do Until Cells(i, iStartCol) = ""
With Cells(i, iStartCol)
.NumberFormat = "0"
strHarang = .Text
lngDatum = Left(strHarang, 8)
dblTid = Right(strHarang, 9)
lngTms = Left(dblTid, 6)
strDatum = Left(lngDatum, 4) & "-" & Mid(lngDatum, 5, 2) & "-" _
& Right(lngDatum, 2)
strTid = Left(lngTms, 2) & ":" & Mid(lngTms, 3, 2) & ":" & Right(lngTms, 2)

With .Offset(0, 1)
.NumberFormat = "yyyy-mm-dd;@"
.FormulaR1C1 = strDatum
End With

With .Offset(0, 2)
.NumberFormat = "hh:mm:ss;@"
.FormulaR1C1 = strTid
End With
End With
i = i + 1
Loop
End Sub

</code>


Svara

Sv: Formatera datum

Postades av 2003-06-18 13:11:41 - Nicklas Grahn

hej tacka för svaren å beklagar att jag dröjt :( (mycket att göra)

Nu har jag körd den nedersta koden å den funkar perfekt nästan =)
har inte hunnit kolla så mucket vad felet är ännu men om tiden är:
20020104072016000 så formaterar den fel, och det har med att klockan är före 10 på förmiddagen då tar den bort nollan :(Varför ???
så formateringen blir 2002-01-04 72:01:60 i stäöllet för
2002-01-04 07:20:16.

ska se om jag kan lösa det själv.
Tacka för all hjälp.
/Nicklas G


Svara

Sv: Formatera datum

Postades av 2003-06-18 13:47:37 - Nicklas Grahn

TAckar för all hjälp, var bara tvungen att göra om long till stRing så att den inte rensar bort nollorna i början

/Nicklas Grahn


Svara

Sv: Formatera datum

Postades av 2003-06-18 15:02:42 - Andreas Hillqvist

Detta är en funktion jag skrivit ssom kanske passar dig. Du kan ju lägga in den i celler du vill förvandla:
<code>
Private Type SerialDate
Text As String * 17
End Type

Private Type SeparatedDate
strYear As String * 4
strMonth As String * 2
strDay As String * 2
strHour As String * 2
strMinute As String * 2
strSecond As String * 2
strMillisecond As String * 3
End Type

Public Function UnSerialDate(ByVal Value As Variant) As Variant
Dim Serial As SerialDate
Dim Separated As SeparatedDate
Serial.Text = Value
LSet Separated = Serial
UnSerialDate = DateSerial(Separated.strYear, Separated.strMonth, Separated.strDay) + TimeSerial(Separated.strHour, Separated.strMinute, Separated.strSecond)
End Function
</code>


Svara

Nyligen

  • 10:01 Erfarenheter av gentaur.se beställ
  • 16:48 Manyo UA
  • 19:52 Free Self-Help Courses
  • 09:13 spännande spel
  • 09:13 spännande spel
  • 09:12 spännande spel
  • 21:44 Spela på Frank Casino – Din svensk
  • 09:00 Digital byrå för restauranger

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 571 720
27 969
271 814
11 845
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies