Update ACCESS 2010 table field based on value in another field with VBA

I have a table with a field DealDateContract.  There are two additional fields in the table that need to be updated with information based on the date in this field, but I can't get the below to work.  Am not sure if there is a QUATER function in ACCESS 2010.  

Public Sub YearQuarterSort()
'UPdates quarter and quarter sort columns in tblReportSource table
Dim rst As DAO.Recordset

Set rst = CurrentDb.OpenRecordset("tblReportSource")
With rst
rst.MoveFirst
Do While Not rst.EOF

        .Edit
            If IsDate(.DealDateContract) Then
        !YrQtr = Year(.DealDateContract) & "-Q" & Quarter(.DealDateContract)
        !YrQtrSort = Year(.DealDateContract) & "-Q" & Quarter(.DealDateContract) & .DealDateContract
        .Update

Loop
    rst.Close
    Set rst = Nothing
End With


End Sub
Sandra SmithRetiredAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Gustav BrockCIOCommented:
There is no Quarter function, but you can use:

    DatePart("q", .DealDateContract)

/gustav
0
Gustav BrockCIOCommented:
And you could reduce to:

     !YrQtr = Format(.DealDateContract, "yyyy\-\Qq")
     !YrQtrSort = Format(.DealDateContract, "yyyy\-\Qqmmdd")

/gustav
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
PatHartmanCommented:
Storing values that can be easily calculated in a query is poor practice not to mention violating first normal form and the second one isn't even useful since you should be sorting by the date field itself.
0
Sandra SmithRetiredAuthor Commented:
Thank you.  This is better than what I inherited.  And Yes, Pat, you are correct, but I am dealing with a legacy system and trying to do as much as I can without having to re-write the entire thing, which I do not have time to do.  I mostly am trying to get this thing to work for a six-month life cycle.  Where I can, I normalize, but sometimes the source process is so convoluted I just have to go with it!

Sandra
0
Sandra SmithRetiredAuthor Commented:
One final comment and actually this I going to be another question on suggestions how to resolve, but rather than creating a partner table with partner names, this previous programmer put three-letter acronyms in column headers so now have to figure out how to report on partner data dynamically determining which columns to use as well as the types are not consistent so I cannot even parse out the client name and then column information.  Now the client wants to add two more partners so now I need to add columns rather than simply add their names to a partner list with associated types of business processes.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Access

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.