Does anyone know a workaround to this problem, and might explain this in a
way that I might understand?
Sure, I can help a bit here.
The first thing to keep in mind is MS access has what's called a multi value
data type field. You should not confuse this data type with someone placing
some text values that are delimited by ";" or "," like you have an excel.
You can most certainly import that data into MS access, but you won't be
importing it to an multi value field. soda clarify, does nothing inherent
in MS access that prevents you from importing this data into a field.
what is confusing here however is, ensuring values into a field separated by
commas or; SP is absolutely no use to anyone, and in fact breaks all the
rules of database management systems.
I mean why enter more than one record into MS access then. Why not have one
big reocrd, and enter a thousand names, but we enter the 1000's names into
ONE reocrd, and we seperte the names, address etc for each name by a ";" for
exmple.
let's assume that we have a database and we enter your name in it and your
favorite colors
fields:
FirstName: Albert
LastName: Kallal
FavColors: red, green, blue, sky blue
In the above I decided to staff my 4 favorite colors into that one field.
The problem is is how will I search for who favorate color is blue?
I can't stress in the above that the above is not a multi value field in the
database definition term that applies to MS access.
Wtih the above, I can build a query that goes:
select * from tblCustomer where FavColor = "blue"
as you can see the above will not work, because I've messed up the favor
colors field, and now we cannot search and sort by persons favotrae colors.
(you can't sort on that above field...it makes no sense to do so).
Furthermore, when you stuff a bunch of values into one field, then you can
not build summary ports, or even get stats on how many people have their
favotre color as blue. Once again I can't stress that there's a huge
difference between the internal defined multi value fields in MS access, and
a simple field with a bunch of values separated by some space or whatever.
While you would say that that field has multiple values in it, it's not a
multi value field in the MS access terms.
It's not clear if you've actually truly defined a multi value field in MS
access here or not. Sicne your actually importing data, then I would suggest
that you don't use multi values in MS access, but use correct database
designs here, and build a table to hold the values, and relate it back to
you main table.
What this means you'll have to import the data that you're getting
incorrectly from excel, pull into a simple table in MS access, and then
write some code to take those values split them out into another table that
is related back to the main table.
There is absoulte nothing stopping you from importing that excel data as you
please. You simply wind up with a text field (string) that is separated by
a comma or space (or semicolon). There's nothing stopping you from doing
that import, it's just that a field with a bunch of values in a separated by
spaces, comma, or ";" is pretty much useless (and htis type of field is NOT
a multi-valued field in ms-access terms either).
I suspect the confusion here stems from the fact that you have of a cell in
excel that has multiple values in it, but that's not the same terminology in
MS access as what a multi-value data type is....