Jag har problem med en for-loop och felhantering när jag hämtar ut värden från en Collection. Kolla följande kod: Förslag: Provade med Resume next men fick samma fel. Du får nog bifoga mer komplett kod samt vilken felkod du får när det skiter sig. Jag skapade en privat metod istället dit jag skickar collection samt värdet som skall testas om det finns i collectionen. Har en felhanterare i denna funktion som sätter resultatet av funktionen till false samt sedan för resume till en annan felhanterare i funktionen som gör Exit på funktionen. Felhantering i For-loop
Se exempel:
For i = 1 To colUpdateCollection.Count
Set oProj = dippTaxonomy.valueCollection(fieldValue)
uppdateringskod etc
....................
..............
nextLoop:
next
ErrorHandle:
If Err.Number = 5 Then
..code to write error mesage to file
Err.Clear
GoTo nextLoop
end if
Jag försöker hämta ut ett värde en collection via nyckelvärdet som finns i variablen fieldValue. Finns inte nyckelvärdet i min collection får man error number 5 och detta tar jag hand om och skriver ut på en felfil. Men, detta funkar endast 1 gång! Om jag i loopen får ytterligare ett värde som inte finns i collection hamnar jag inte i min ErrorHandle utan programmet dumpar!!! Finns det något bra tips på något som jag glömt el .dylikt??
/MagnusSv: Felhantering i For-loop
On Error GoTo Felhant
Dim i As Integer
Dim j As Integer
For i = 0 To 10
'Påtvinga fel
If i = 5 Then
j = 700000
End If
Next
Exit Sub
Felhant:
MsgBox "fel" 'Här kan annan felhant utföras
Err.Clear
Resume Next 'Återgår till loopen
//FreddeSv: Felhantering i For-loop
<code>
On Error Goto ErrorHandle
For i = 1 To colUpdateCollection.Count
Set oProj = dippTaxonomy.valueCollection(fieldValue)
If Not oProj Is Nothing Then
'uppdateringskod etc
' ....................
'..............
Set oProj = Nothing
End If
Next
ErrorHandle:
If Err.Number = 5 Then
'..code to write error mesage to file
Resume Next
End if
</code>Sv: Felhantering i For-loop
Provade med att titta på antalet entries i den collection jag försöker accessa med hjälp av nyckelvärdet och den har i mitt fall 8 st entries så den är inte tom. Hade en ide om att den kanske tappade värden när ett fel uppstod men så var inte fallet.
Konstigt fel detta....
/MagnusSv: Felhantering i For-loop
//FreddeSv: Felhantering i For-loop
Kör jag denna funktion för värdena som jag vill plocka ut från min collection funkar det nu för mer än 1 gång,
/Magnus