473,434 Members | 1,574 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,434 software developers and data experts.

Need help normalizing a table(s) in MS Access 2007

2 2Bits
I thought I posted this, but I can't find it anywhere, so I'm going to post it, again. I hope there's not some kind of delay, and they both show up!

I am fairly new to MS Access 2007, and, as I get older, I am starting to have problems with my logical thinking. That being said, I would appreciate help with a budget I am trying to build. I have several Wells Fargo bank accounts, and I am able to download my transaction histories for each account as ".csv" files. I would like to be able to view and analyze this data in MS Access, but I am having difficulty at the most basic level (at the point that I understand to be "1NF").

When opened in MS Excel, the data is presented in this way (I apologize if there is a better, or more preferred method of presenting this):

A1 = Date (with format 1/1/2023)
B1 = Number (this is a financial transaction, but doesn't have any formatting other than a minus sign for payments, withdrawals, etc).
C1 = * (all cells in this column only have an Asterisk, not sure of why)
D1 = (all cells in this column are blank)
E1 = (this is the problem cell... This column contains the majority of the information that I would use to populate fields in a table, or more than likely, two tables. Problems I have with it is that it doesn't have delimiters between the data that I would separate, and doesn't have a consistent format, that is, it doesn't always contain the same type of information, or in the same order).

Examples of data found in this column are:

E1 = GWM LLC UTILITYPMT 181220 XXXXX1136 JOHN SMITH
E2 = PURCHASE AUTHORIZED ON 12/18 CARL'S JR #1100133 FRESNO CA S422311800563230 CARD 1234
E4 = AAA INSURANCE PAYMENT 221218 990141116932674 SMITH

And, so on...

If I go to the Wells Fargo website and copy and paste from the online transaction history, into excel, I can bring some formatting with it, and what I feel is some helpful separation. This method looks like this:

A1 = Date (with format 1/1/2023)
B1 = same as E1 is the previous example
C1 = $1,000 (formatted as Currency, this column is for deposits, credits, transfers in, or other money coming in, and is empty unless the transaction is one of those types).
D1 = $1,000 (formatted as Currency, this column is for payments, withdrawals, transfers out, or other money going out, and is empty unless the transaction is one of those types).
E1 = $1,000 (formatted as Currency, this column is the balance amount, post-transaction).

I am not concerned about the currency transactions, at this time, because I think however I choose to handle those, it will be fairly straight forward. My issue is breaking down the trouble cell (E1 in the former example, B1 in the latter) into useful fields in Access. Because the information doesn't use consistent formatting, my first (Excel-based) thought is to use an if, then, type statement to populate another field in an existing table (Like if the field contains "GWM LLC", populate the field "FriendlyName" with "Water & Trash Bill" or, if it finds six numbers with a space on each end, assume that's a date, and format it accordingly (yes, I can see issues with that one, but just visually skimming the information I have, it seems like it could work...). Again, these are just my first thoughts, but seem viable. And, being fairly new, I hate to jump into the VBA code pool, too early. Is there another way? I figured your experience would help me in avoiding any pitfalls, and in recommending a preferred method. Another thing that I'd like to keep in mind, is that this won't be a one-time thing. I will continue to get data in one of these ways (copy & paste, or via .csv files), and it will always be in the non-preferred format, so this will be an ongoing process, and therefore, as much automation as possible would be preferred. I apologize for the post length, but I wanted to make sure I explained to the best of my ability.
Thank you, in advance,
Ash
Apr 3 '23 #1

✓ answered by NeoPa

Hi Ash.

Welcome to Bytes.com.

New threads always go into a moderation queue before they are available publicly. It is only frustrating that this is not made clearer to new members when they first post a new thread. In this case, as you'll see, your post is perfectly fine and should continue to be visible going forward.

As for your question, it seems it boils down to the fact you have some data that even you don't know the reliable format of, or logic to. That will always be a problem. If you don't understand the format how can anyone expect to interpret the data automatically - as in how can you program for a format you don't know?

As such, if I'm to be of any help at all, I must limit myself to some very general observations. A shame really as you seem to have done a pretty decent job of explaining the situation. I know at least that the major issue is dealing with column E of the first type of file and/or column B of the second.

So, the data is pretty much in the same format regardless of which one we are dealing with (I understand). Nevertheless it seems to vary between records. What I would look to do is to write a Function procedure in VBA in your database that has the understanding of the data within it. I understand this will start off as very limited, as your understanding of the data starts as very limited, but that you can add to it as you proceed. The Function would be provided with the full data from column E (or B, depending) and an extra parameter that tells the code what type of data is required out the other end (Return Value).

The Function would have to be coded - once you understand the data well enough to do so (and this could be added to over time as your understanding evolves) - in order to extract different data from the string depending on which element has been requested and what it recognises to be the format of the data as presented - as we know the format can change based on other factors we know not of - as yet.

I'm afraid, based on the little we know at this point, that's as much as I can say.

3 13880
NeoPa
32,556 Expert Mod 16PB
Hi Ash.

Welcome to Bytes.com.

New threads always go into a moderation queue before they are available publicly. It is only frustrating that this is not made clearer to new members when they first post a new thread. In this case, as you'll see, your post is perfectly fine and should continue to be visible going forward.

As for your question, it seems it boils down to the fact you have some data that even you don't know the reliable format of, or logic to. That will always be a problem. If you don't understand the format how can anyone expect to interpret the data automatically - as in how can you program for a format you don't know?

As such, if I'm to be of any help at all, I must limit myself to some very general observations. A shame really as you seem to have done a pretty decent job of explaining the situation. I know at least that the major issue is dealing with column E of the first type of file and/or column B of the second.

So, the data is pretty much in the same format regardless of which one we are dealing with (I understand). Nevertheless it seems to vary between records. What I would look to do is to write a Function procedure in VBA in your database that has the understanding of the data within it. I understand this will start off as very limited, as your understanding of the data starts as very limited, but that you can add to it as you proceed. The Function would be provided with the full data from column E (or B, depending) and an extra parameter that tells the code what type of data is required out the other end (Return Value).

The Function would have to be coded - once you understand the data well enough to do so (and this could be added to over time as your understanding evolves) - in order to extract different data from the string depending on which element has been requested and what it recognises to be the format of the data as presented - as we know the format can change based on other factors we know not of - as yet.

I'm afraid, based on the little we know at this point, that's as much as I can say.
Apr 3 '23 #2
AshAccess
2 2Bits
NeoPa, Thank you for your prompt attention to my problem! As I suspected... I guess the next step is to start brushing up on VBA code. Without knowing too much about it, I'm guessing I'll be able to utilize some sort of "like", and "if, than, else" type queries to cut down on some of the grunt work (there are a lot of repeating entries, as I eat at certain restaurants close to my work, on a semi-regular basis, and of course, the monthly bills), but a lot of it will probably be down and dirty manual data entry, for those less often, and one time, purchases. Until I get more comfortable with the necessary code I was thinking it might even be easier for me to do some manipulation in Excel, before importing it to access. I feel guilty even saying that (typing it) out loud, because I fully know there's nothing Excel can do, that access can't, but there's that learning curve... Yes, I was hoping for the magic bullet, but I'm still a firm believer that anything is possible with Access, so I'll keep plugging away, learning, and becoming a better person, because of it!
Thanks, again,
Ash
Apr 3 '23 #3
NeoPa
32,556 Expert Mod 16PB
Hi Ash.

In a way it's true to say that you will probably require some VBA skills in order to create even the framework within which this can work. However, it's also true to say that a major ingredient, and one that will need to be added in early, is an understanding of the logic you're trying to implement. The framework can never be enough on its own - but you're right to think it is a necessary part of the process.
Apr 9 '23 #4

Sign in to post your reply or Sign up for a free account.

Similar topics

49
by: Allen Browne | last post by:
If you are looking for opinon on what's useful in Access 2007, there's a new article at: http://allenbrowne.com/Access2007.html Covers what's good (useful features), what's mixed (good and bad),...
29
by: Paul H | last post by:
Why the heck was this dropped? All my dbs use ULS even the complex ones. It aint perfect, it's too fiddly, but it works. How will I be able to say "These users can run these reports and these...
16
by: Neil | last post by:
I posted a few days ago that it seems to me that the Access 2007 rich text feature does not support: a) full text justification; b) programmatic manipulation. I was hoping that someone might...
2
by: ARC | last post by:
Just curious if anyone is having issues with Acc 2007 once the number of objects and complexity increases? I have a fairly large app, with many linked tables, 100's of forms, queries, reports, and...
2
nico5038
by: nico5038 | last post by:
Access 2007 Linkedtable manager refuses to relink tables having a field with the "Attachment" datatype. Problem: When placing a split database in another folder, the Linked table manager should...
6
by: tony.abbitt | last post by:
I have recently installed Office 2007 (SP1) retaining the previous installation of Office 2003. I have converted an Access 2003 database to Access 2007. The database contains the VBA code...
5
by: WPW07 | last post by:
Hello, We have several complex applications developed in Access 2003 by various outside consultants. These applications link to a variety of Oracle tables and are used only for Access reports. ...
1
by: trixxnixon | last post by:
When a database is loaded into sharepoint, would an end user also need to have access 2007 loaded on their machine?
1
by: ncsthbell | last post by:
I created a database using full blown access 2007. I have put it out for users to grab and test using Runtime Access 2007. They have entered data and now I need to go back into a table and change a...
3
by: phillikl | last post by:
Good day, Having a total brain fart on this and need some help. Access 2007 2 Tables Table1: Director (200 records) Field1: Name Field2: phone
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.