Better code that will test if member already exist:
Public Sub AddMem()
Dim wshCurrent As Worksheet
Dim strMemArr() As String
Dim strMemToAdd As String
Dim strMemID As String
Dim strDimName As String
Dim lngTemp As Long
Dim lngTemp1 As Long
Set wshCurrent = ThisWorkbook.Worksheets("Sheet1")
strMemToAdd = wshCurrent.Range("B1").Value
strDimName = "TITLES"
strMemArr = epm.GetRowAxisMembers(wshCurrent, "000")
For lngTemp = 0 To UBound(strMemArr)
lngTemp1 = InStrRev(strMemArr(lngTemp), "[") + 1
strMemID = Mid(strMemArr(lngTemp), lngTemp1, Len(strMemArr(lngTemp)) - lngTemp1)
If strMemID = strMemToAdd Then GoTo AlreadyExist
Next lngTemp
epm.AddMemberToRowAxis wshCurrent, "000", "TITLES:" & strMemToAdd, 1
epm.RefreshActiveReport
AlreadyExist:
End Sub
Vadim