arcgis vba 查找代码错误如何改?

arcgis版本为10.2.2,代码在最下方,出错停在这一句:Set pFeCursor = pFeClass.Search(pqfilter, False),
查询构建器的语句如下
1.jpg

原发生错误时各变量值如下

2.jpg


3.jpg


4.jpg

代码如下:

Private Sub CommandButton4_Click()
'On Error GoTo line
Dim pdoc As IMxDocument
Set pdoc = ThisDocument
Dim pmap As IMap
Set pmap = pdoc.FocusMap
Dim pFeLayer As IFeatureLayer
MsgBox x
MsgBox ComboBox2.Text + x + TextBox1.Text
For i = 0 To pmap.LayerCount - 1
If pmap.Layer(i).Name = UserForm1.ComboBox1.Text Then
Set pFeLayer = pmap.Layer(i)
Exit For
End If
Next i
Dim pFeClass As IFeatureClass
Dim pFeCursor As IFeatureCursor
Dim pqfilter As IQueryFilter
Set pFeClass = pFeLayer.FeatureClass
Set pqfilter = New QueryFilter
pqfilter.WhereClause = ComboBox2.Text + x + TextBox1.Text
Set pFeCursor = pFeClass.Search(pqfilter, False)
Dim pFeature As IFeature
For i = 0 To pFeClass.FeatureCount(pqfilter) - 1
Set pFeature = pFeCursor.NextFeature
pmap.SelectFeature pFeLayer, pFeature
Next i
If pFeClass.FeatureCount(pqfilter) = 0 Then
MsgBox "没有满足查询条件的地方"
End If
pdoc.ActiveView.Refresh
Unload Me
Exit Sub
line:
MsgBox "操作错误"
End Sub
是什么原因呢?数据类型不对吗?还是版本原因?
 
1-1.jpg
已邀请:

徐珂 - ArcGIS for Desktop

赞同来自:

不太懂代码,这个具体要实现什么功能?

要回复问题请先登录注册