you'll need to write a vba routine to split the tag and update a table. Suggest the table is called tblTags with a field called TagName which is indexed, no duplicates. Depending on what you are doing with the data once extracted you may also want an autonumber primary key.
suggest something like this in a module
Code:
Public Function SplitTag(TagStr as string) As String
dim Tarr() as string
dim I as integer
if TagStr<>"" then
Tarr=split(TagStr,";")
SplitTag=ubound(Tarr) & " Tags found:- |"
On Error Resume Next
for I=0 to ubound(Tarr)-1
currentdb.execute("INSERT INTO tblTags (TagName) Values('" & Tarr(I) & "')", dbfailonerror)
SplitTag=SplitTag & err.number & "|"
next I
else
SplitTag="No Tags"
End if
End function
and your query would simply be something like
SELECT PrimaryKey, SplitTag(Tags) FROM Table1
It will return a string which tells you how many tags it found for each record and the result of inserting each one into the table
I haven't tested it but an error may be generated if it tries to insert a value that already exists so you may find a lot of 'value already exists errors