I have the code (VBA) below hooked up to a button in ArcMap 10.0. The first time it is used it runs successfully. If I try to run it a second time, the Intersect tool doesn't create the in_memory featureclass as expected and the code fails when it tries to run CalculateField. Any ideas as to why?
(Identify and validate pLayer & pLayer2) ... 'Intersect the PLU/soils data with the Sections Dim pGp As IGeoProcessor Set pGp = New GeoProcessor pGp.OverwriteOutput = True Dim pParams As IVariantArray Set pParams = New VarArray Dim PTS As String PTS = "PlanningToolSoils" pParams.RemoveAll pParams.Add pLayer.Name & "; " & pLayer2.Name pParams.Add "in_memory\" & PTS pParams.Add "NO_FID" pGp.Execute "Intersect_Analysis", pParams, Nothing 'Update the CALCACRES Column pParams.RemoveAll pParams.Add PTS pParams.Add "CALCACRES" pParams.Add "!shape.area@acres!" pParams.Add "PYTHON" pGp.Execute "CalculateField_management", pParams, Nothing 'Export the tabular portion of the FeatureClass to C:\temp\data.dbf pParams.RemoveAll pParams.Add PTS pParams.Add "C:\temp\Data.dbf" pGp.AddOutputsToMap = False pGp.Execute "CopyRows_management", pParams, Nothing 'Delete the temporary featureclass pMap.DeleteLayer FindLayerByName(pMap, PTS) 'A home-built function that searches for an ILayer in the TOC pParams.RemoveAll pParams.Add "in_memory\" & PTS pGp.Execute "Delete_management", pParams, Nothing