I made a small test. It works according to the help documentation.
If it doesn't help could you post your small test that reproduces the problem.
Private Sub iMateDuringOccurrencePlacement_2()
' Reference to the active assembly document
' (assume that an assembly document is open and activated).
Dim oAsmDoc As AssemblyDocument
Set oAsmDoc = ThisApplication.ActiveDocument
' Get the component definition of the active assembly.
Dim oAsmCompDef As AssemblyComponentDefinition
Set oAsmCompDef = oAsmDoc.ComponentDefinition
Dim oRepMan As RepresentationsManager
Set oRepMan = oAsmCompDef.RepresentationsManager
Dim oDVR As DesignViewRepresentation
'--------------------
' 1st component
'--------------------
'Activate some custom view representation in the top assembly
Set oDVR = oRepMan.DesignViewRepresentations.Item(3)
Call oDVR.Activate
' Create a new matrix object. It will be initialized to an identity matrix.
Dim oMatrix As Matrix
Set oMatrix = ThisApplication.TransientGeometry.CreateMatrix
Dim sPath As String
sPath = "C:\PR14\Case_Forum\TestPart1.ipt"
' Create a new NameValueMap object
Dim oOptions As NameValueMap
Set oOptions = ThisApplication.TransientObjects.CreateNameValueMap
Call oOptions.Add("DesignViewRepresentation", "NoWorkFeatures")
Call oOptions.Add("DesignViewAssociative", True)
' Place the first occurrence.
Dim oOcc1 As ComponentOccurrence
Set oOcc1 = oAsmCompDef.Occurrences.AddWithOptions(sPath, oMatrix, oOptions)
oAsmDoc.Update
'--------------------
' 2nd component
'--------------------
'Activate another custom view representation in the top assembly
Set oDVR = oRepMan.DesignViewRepresentations.Item(4)
Call oDVR.Activate
' Set the representations to use when creating the occurrence.
oOptions.Clear
Call oOptions.Add("DesignViewRepresentation", "NoWorkFeatures")
Call oOptions.Add("DesignViewAssociative", True)
' Place the second occurrence, but use iMates for its placement.
Dim oOccEnumerator As ComponentOccurrencesEnumerator
Set oOccEnumerator = oAsmCompDef.Occurrences _
.AddUsingiMates(sPath, False, oOptions)
oAsmDoc.Update
oAsmDoc.Save
' Since the 'PlaceAllMatching' flag was specified as False,
' we can be sure that just one ComponentOccurrence
' was returned in the enumerator.
Dim oOcc2 As ComponentOccurrence
Set oOcc2 = oOccEnumerator.Item(1)
Beep
End Sub
Cheers,
Vladimir Ananyev
Developer Technical Services
Autodesk Developer Network