Thank You All:
But I am still getting an error when I list the code and modify according to my tables
Gives me an error as "User -Defined type not defined" Compile error with Expand_DosageForm in yellow and db as Databse in blue. Here is what I entered.
Public Sub Expand_DosageForm()
Dim
db As Database, rst As Recordset
Dim oldIdx As Long, newIdx As Long
Dim hldGen As String, hldTN As String
Dim hldDF As String, hldUD As String
Dim nChr As Long, SQL As String
Set db = CurrentDb()
Set rst = db.OpenRecordset("DRUGS", dbOpenDynaset)
oldIdx = 1
Do
'If comma exist continue. Skip otherwise.
If InStr(oldIdx, rst![Dosage Form], ","

Then
'Hold record common data.
hldGen = rst!Generic
hldTN = rst![Trade Name]
hldDF = rst![Usual Dose]
hldUD = rst![Dosage Form]
newIdx = InStr(oldIdx, hldUD, ","
'Extract components and add Records
Do Until InStr(oldIdx, hldUD, ","

= 0
'nChr is used to prevent word wrapping
'in the post!
nChr = newIdx - oldIdx
'Add new record
rst.AddNew
rst!Generic = hldGen
rst![Trade Name] = hldTN
rst![Usual Dose] = hldDF
rst![Dosage Form] = Mid(hldUD, oldIdx, nChr)
rst.Update
'Set Idx for next component
oldIdx = newIdx + 1
newIdx = InStr(oldIdx, hldUD, ","
'PickUp far right component when no
'more comma's detected.
If newIdx = 0 Then
nChr = Len(hldUD) - oldIdx + 1
rst.AddNew
rst!Generic = hldGen
rst![Trade Name] = hldTN
rst![Usual Dose] = hldDF
rst![Dosage Form] = Right(hldUD, nChr)
rst.Update
End If
Loop
End If
rst.MoveNext
oldIdx = 1
Loop Until rst.EOF
'Delete all records with comma in Dose
SQL = "DELETE [ID], [Dosage Form] " & _
"FROM DRUGS " & _
"WHERE InStr(1,[Dosage Form]," & """,""" & "

>0;"
DoCmd.RunSQL SQL
Set rst = Nothing
Set db = Nothing
End Sub