Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Converting File date to Julian Date Format "JJJ"

Posted on 2006-11-27
11
498 Views
Last Modified: 2008-01-16
I need to create a file name using JJJ in the name which would be the Julian Date format of todays date.  Any idea in VB6 how to do this?  I need to take a file date and then convert that date to the JJJ conversion.  I have code looping through files, so I have the file name and path.  But I need to capture the date of the file and then create the JJJ.  thanks all
0
Comment
Question by:sbornstein2
  • 3
  • 3
  • 2
  • +3
11 Comments
 
LVL 67

Assisted Solution

by:sirbounty
sirbounty earned 50 total points
ID: 18020198
This link has a function that will do that...
http://www.veign.com/vrc_codeview.asp?type=app&id=118

Post if you need additional help. :^)
0
 
LVL 10

Assisted Solution

by:Clif
Clif earned 50 total points
ID: 18020525
Function DateToJulian(dtDate As Date) As Long

    Dim a As Integer, B As Integer, d As Integer, m As Integer, y As Integer

   d = Day(dtDate)
   If (Month(dtDate) > 2) Then
      y = Year(dtDate)
      m = Month(dtDate)
   Else
      y = Year(dtDate) - 1
      m = Month(dtDate) + 12
   End If
   a = y \ 100
   If (Year(dtDate) >= 1582) Or ((Year(dtDate) = 1582) And ((Month(dtDate) >= 10) Or ((Month(dtDate) = 10) And (Day(dtDate) >= 4)))) Then
      B = 2 - a + a \ 4
   Else
      B = 0
   End If
   DateToJulian = Int(365.25 * (y + 4716)) + Int(30.6001 * (m + 1)) + d + B - 1524.5
End Function
0
 
LVL 20

Expert Comment

by:hes
ID: 18020538
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 20

Assisted Solution

by:hes
hes earned 50 total points
ID: 18020559
0
 
LVL 28

Assisted Solution

by:Ark
Ark earned 100 total points
ID: 18023666
Public Function JDay(ByVal dt As Date, Optional BC As Boolean) As Double
   Dim Y As Integer, m As Integer, D As Integer, k As Integer
   Dim JD As Double
   D = Day(dt): m = Month(dt): Y = Year(dt)
   If BC Then Y = 1 - Y
   k = Int((14 - m) / 12)
   JDay = D + Int(367 * (m + (k * 12) - 2) / 12) + Int(1461# * (Y + 4800 - k) / 4) - 32113
   If JDay > 2299160 Then
      JDay = JDay - (Int(3 * Int((Y + 100 - k) / 100) / 4) - 2)
   End If
   JDay = JDay - 0.5 + CDbl(dt) - Int(CDbl(dt))
End Function

0
 
LVL 45

Expert Comment

by:aikimark
ID: 18024061
JJJ = Format(Date,"yyy")

for Date= 11/27/2006, JJJ = 06331
0
 
LVL 28

Assisted Solution

by:Ark
Ark earned 100 total points
ID: 18024112
06331 means 331 day of 2006 year
0
 
LVL 45

Accepted Solution

by:
aikimark earned 250 total points
ID: 18024138
JJJ = Format(Date,"y")
331
0
 
LVL 45

Expert Comment

by:aikimark
ID: 18024144
pardon the terse response.  Let me explain...a Julian date has the format YYDDD.  My first post's code produces such a string.  My second post is in response to the Ark comment, indicating the Format string that returns just the DDD portion of the Julian date.
0
 
LVL 28

Expert Comment

by:Ark
ID: 18024343
Aikimark, sorry if I misunderstood you and/or  sbornstein2, but in astronomy julian date have double format d.f (where f  is a fraction of a day) - number of days from the noon 01.01.01 AC
0
 

Author Comment

by:sbornstein2
ID: 18024356
Thanks all was helpful.  Also thanks for the file date link Hes.
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question