Private Sub ParseAString()
Dim rst As Recordset
Dim strToParse As String
Dim arrParsed
strToParse = DLookup("[FieldName]","TableName") 'this is the table that holds your string.
arrParsed = Split(strToParse, "|")
Set rst = CurrentDb.OpenRecordset("NameOfTable") 'this is the table to store the 5 fields.
rst.AddNew
For i = 0 To 4
rst(i).Value = arrParsed(i)
Next
rst.Update
rst.Close
Set rst = Nothing
End Sub
Did your table have more than one record to parse?
What about "Blanks"?: SomeText||SomeMoreText
Is this string field in the same table that "target" fields are in?