Grundsätzliche Anfrage wegen Problem bei ArcMap-Filtern in vba

Hi,
dieses Problem interessiert mich so langsam wirklich. Dabei ist es losgelöst von meinen sonstigen Problemen, denn es taucht bei verschiedenen ArcMap-Filtern auf. Beispielsweise bei FocalStatistics_sa oder Filter_sa.

Meine VBA-Skripte laufen eigentlich nicht schlecht, denke ich (wenn sie denn mal laufen ;) ), aber wenn ich den "IgnoreData"-Parameter von FALSE auf TRUE ändere, dann erhalte ich anstelle einer Programmausführung eine Fehlermeldung:

Laufzeitfehler '-214746759 (80004005)':
Automatisierungsfehler
Unbekannter Fehler

Der Klick auf Debuggen bringt mich dann zur Aufrufzeile des Filters
pgeoprocessor_focal.Execute "FocalStatistics_sa", parameter_focal, Nothing
Soweit klar, hier hängt es dann.

Der Klick auf "Hilfe" führt zum Eintrag
Automatisierungsfehler (Fehler 440)
Während der Ausführung einer Methode oder beim Abrufen bzw. Festlegen einer Eigenschaft einer Objektvariablen ist ein Fehler aufgetreten. Der Fehler wurde von der Anwendung gemeldet, die dieses Objekt erstellt hat.
Überprüfen Sie die Eigenschaften des Err-Objekts, um Ursache und Art des Fehlers bestimmen zu können. Versuchen Sie auch, vor der Zugriffsanweisung die On Error Resume Next-Anweisung zu verwenden, und überprüfen Sie dann unmittelbar nach der Zugriffsanweisung, ob Fehler aufgetreten sind.

Mal abgesehen davon, daß ich keine Ahnung habe, wie man " Eigenschaften des Err-Objekts"-überprüft, wundert es mich, daß die Skripte die Arbeit verweigern.
Soweit ich es begriffen habe bedeutet der Parameter FALSE, daß der Filter immer dann, wenn in der Maske ein NoData-Wert auftaucht, der Ergebniswert des Pixels ebenfalls NoData wird.
Bei TRUE wird ein in der Maske auftauchender NoData-Wert einfach ignoriert und nur mit den anderen Werten gerechnet.

(DATA — Specifies that if a NoData value exists within a neighborhood, the NoData value will be ignored. Only cells within the neighborhood that have data values will be used in determining the maximum value.
NODATA — Specifies that if any cell in a neighborhood has a value of NoData, the output for each cell in the corresponding block will receive NoData. Whenever the NoData keyword is used, the presence of a NoData value implies that there is insufficient information to determine the maximum of the values of the neighborhood.)

Wie gesagt, mit "FALSE" funktioniert es problemlos.

Hatte schonmal jemand mit soetwas zu tun oder hat jemand eine Idee, was ich da schon woeder vermurkst habe?

Ciao
Andi

P.S. Ach ja, das hier wäre so ein Skript.

Private Sub UIButtonControl1_Click()
'FocalStatistics_sa <in_raster> <out_raster> {neighborhood} {MEAN | MAJORITY | MAXIMUM | MEDIAN | MINIMUM | MINORITY | RANGE | STD | SUM | VARIETY} {DATA | NODATA}
' <in_raster>: The raster to perform the Focal Statistics calculations on.
' <out_raster>: The raster to be created.
' {neighborhood}: Typ {neighborhood}: RECTANGLE, {width}, {height}, {CELL | MAP} — A rectangular neighborhood with the given {height} and {width}. The default rectangle is a square of width 3 and height 3, in units of cells. If only one of {width} or {height} is specified, the result is a square.
' {Statistic type}. Typ String: {MEAN | MAJORITY | MAXIMUM | MEDIAN | MINIMUM | MINORITY | RANGE | STD | SUM | VARIETY}
' {DATA | NODATA}: Typ boolean.DATA — Specifies that if a NoData value exists within a neighborhood, the NoData value will be ignored. Only cells within the neighborhood that have data values will be used in determining the maximum value.
' NODATA — Specifies that if any cell in a neighborhood has a value of NoData, the output for each cell in the corresponding block will receive NoData. Whenever the NoData keyword is used, the presence of a NoData value implies that there is insufficient information to determine the maximum of the values of the neighborhood.

'Command line example
'FocalStatistics_sa C:/data/raster1 C:/data/focalstat "Rectangle 5 6 Map" DATA

'Erzeuge geoprocessor object
Dim pgeoprocessor_focal As IGeoProcessor
Set pgeoprocessor_focal = New GeoProcessor

'Array-Object für GeoProcessor
Dim parameter_focal As IVariantArray
Set parameter_focal = New VarArray

'Erzeuge Parameter für Filter-Werkzeug
Dim inraster_focal, outraster_focal As String

Dim neighborhood_focal As String
Dim focal_statistictype As String
Dim IgnoreData As Boolean

'Setze Variablen für Filter-Werkzeug
inraster_focal = "c:\temp\daten\eingangsraster.img"
outraster_focal = "c:\temp\daten\ausggaberaster.img"
neighborhood_focal = "Rectangle, 3, 3, Map" 'hier müssen Kommata rein!!
'neighborhood_focal = "Rectangle, 1, 7, Map" 'Geometrie: 1 Pixel breit, 7 Pixel hoch, betrachtetes Pixel in der Mitte

focal_statistictype = "RANGE"
IgnoreData = False

'Füge Parameter zum Übergabe-Array zu
parameter_focal.Add (inraster_focal)
parameter_focal.Add (outraster_focal)
parameter_focal.Add (neighborhood_focal)
parameter_focal.Add (focal_statistictype)
parameter_focal.Add (IgnoreData)

'starte das Filter-Werkzeug FocalStatistics_sa
pgeoprocessor_focal.Execute "FocalStatistics_sa", parameter_focal, Nothing

End Sub