hallo
besteht die möglichkeit via vba mehrer spalten einer tabellen auszuwerten und abhängigkeit der dort vorkommenden werte in einer anderen spalte z.b eine gesamtwertstufe einzutragen. bisher löse ich das mittels vba in der tabellenkalkulation. dort lautet der code so:
Function RLWert(RL0_By As Integer, RL1_By As Integer, RL2_By As Integer, RL3_By As Integer, RL4_By As Integer, RL4R_By As Integer, RL4S_By As Integer) As String
'-- sehr hohe Bewertungsstufe RL By
If RL0_By = 1 Then
RLWert = "sehr hoch"
ElseIf RL1_By = 1 Then
RLWert = "sehr hoch"
ElseIf RL2_By = 1 Then
RLWert = "sehr hoch"
'-- hohe Bewertungsstufe RL By
ElseIf RL3_By = 1 Then
RLWert = "hoch"
ElseIf RL4_By = 1 Then
RLWert = "hoch"
ElseIf RL4R_By = 1 Then
RLWert = "hoch"
ElseIf RL4S_By = 1 Then
RLWert = "hoch"
L0_By+RL1_By+RL2_By+RL3_By+RL4_By+RL4R_By+RL4S_By+ RL0 = 0 Then
RLWert = "mittel bis sehr gering"
End If
End Function
wie kann ich diesen code auf dbf-tabellen im 9er anweden?
freue mich auf eine antwort
klau
besteht die möglichkeit via vba mehrer spalten einer tabellen auszuwerten und abhängigkeit der dort vorkommenden werte in einer anderen spalte z.b eine gesamtwertstufe einzutragen. bisher löse ich das mittels vba in der tabellenkalkulation. dort lautet der code so:
Function RLWert(RL0_By As Integer, RL1_By As Integer, RL2_By As Integer, RL3_By As Integer, RL4_By As Integer, RL4R_By As Integer, RL4S_By As Integer) As String
'-- sehr hohe Bewertungsstufe RL By
If RL0_By = 1 Then
RLWert = "sehr hoch"
ElseIf RL1_By = 1 Then
RLWert = "sehr hoch"
ElseIf RL2_By = 1 Then
RLWert = "sehr hoch"
'-- hohe Bewertungsstufe RL By
ElseIf RL3_By = 1 Then
RLWert = "hoch"
ElseIf RL4_By = 1 Then
RLWert = "hoch"
ElseIf RL4R_By = 1 Then
RLWert = "hoch"
ElseIf RL4S_By = 1 Then
RLWert = "hoch"
L0_By+RL1_By+RL2_By+RL3_By+RL4_By+RL4R_By+RL4S_By+ RL0 = 0 Then
RLWert = "mittel bis sehr gering"
End If
End Function
wie kann ich diesen code auf dbf-tabellen im 9er anweden?
freue mich auf eine antwort
klau
- Anmelden oder Registieren, um Kommentare verfassen zu können
Gespeichert von Robsn am Fr., 26.10.2007 - 13:25
PermalinkDim pMxDoc As IMxDocument
Dim RLWert As String
Set pMxDoc = ThisDocument
Dim pMap As IMap
Set pMap = pMxDoc.FocusMap
Dim pActiveView As IActiveView
Set pActiveView = pMap
Dim pFLayer As IFeatureLayer
Dim pfeat As IFeature
Dim pCur As IFeatureCursor
Dim pDispTable As ITable
Set pFLayer = pMap.Layer(X) <- Layercount eintragen
Set pDispTable = pFLayer
Dim pFC As IFeatureClass
Set pFC = pFLayer.FeatureClass
Dim pFeatureSelection As IFeatureSelection
Set pFeatureSelection = pFLayer
Dim pSelectionset As ISelectionSet
Set pSelectionset = pFeatureSelection.SelectionSet
pSelectionset.Search Nothing, False, pCur
Set pfeat = pCur.NextFeature
Do While Not pfeat Is Nothing
bei jedem schritt dann einfach
if pfeat.value(pfeat.fields.findfield("RL0_By")) = 1 then
RLWert = "sehr hoch"
Else
RLWert = "niedrig"
End if
^^
die kombinationen musst du dann selbst raussuchen.
Set pfeat = pCur.NextFeature
Loop