kitcat_m18
پنج شنبه 07 مهر 1390, 20:28 عصر
من يه Sub دارم به اين صورت
On Error GoTo Khata
For File_Count = 0 To File1.ListCount - 1
Call Add_From_DOS_To_Win
Khata:
If Err Then
Call Log(File1.FileName, Format(Now, "HH:mm:ss"), Format(Now, "yyyy-mm-dd"), Err.Number & " " & Err.Description)
Err.Clear
End If
Next File_Count
وقتي تو قسمت Add_From_DOS_To_Win به خطايي مي خورم بار اول کنترل خطا انجام ميشه اما بار دوم ديگه کنترل خطا انجام نميشه
اگه دقت کنيد من حتي بعد از لاگ کردن خطا Err رو Clear کردم اما برام جالبه که با اين حال کنترل خطا براي بار دوم اجراي حلقه در Add_From_DOS_To_Win صورت نميگيره . برنامه ارور ميده
يه سوال ديگه:
وقتي از on error goto A تو يه حلقه استفاده مي کنم بعد از رفع خطا از حلقه هم خارج ميشه دليل اين مسئله چيه؟؟؟
مثلا:
Dim i As Long
On Error GoTo p
For i = 1 To Rs_Fox.RecordCount
Rs_DataBase.AddNew
Rs_DataBase.Fields!a= MohsenConvertor.Convert_To_Windows(Rs_Fox.Fields!a Revers_Result_NoRevers)
Rs_DataBase.Fields!b= MohsenConvertor.Convert_To_Windows(Rs_Fox.Fields!b Revers_Result_NoRevers)
p:
Rs_DataBase.Update
Rs_Fox.MoveNext
Next i
تو اين حلقه رفع خطا انجام ميشه اما Next i بعدي انجام نميشه و از حلقه خارج ميشه. :متعجب:
کسي مي تونه منو راهنمايي کنه؟؟؟:متفکر:
با تشکر
On Error GoTo Khata
For File_Count = 0 To File1.ListCount - 1
Call Add_From_DOS_To_Win
Khata:
If Err Then
Call Log(File1.FileName, Format(Now, "HH:mm:ss"), Format(Now, "yyyy-mm-dd"), Err.Number & " " & Err.Description)
Err.Clear
End If
Next File_Count
وقتي تو قسمت Add_From_DOS_To_Win به خطايي مي خورم بار اول کنترل خطا انجام ميشه اما بار دوم ديگه کنترل خطا انجام نميشه
اگه دقت کنيد من حتي بعد از لاگ کردن خطا Err رو Clear کردم اما برام جالبه که با اين حال کنترل خطا براي بار دوم اجراي حلقه در Add_From_DOS_To_Win صورت نميگيره . برنامه ارور ميده
يه سوال ديگه:
وقتي از on error goto A تو يه حلقه استفاده مي کنم بعد از رفع خطا از حلقه هم خارج ميشه دليل اين مسئله چيه؟؟؟
مثلا:
Dim i As Long
On Error GoTo p
For i = 1 To Rs_Fox.RecordCount
Rs_DataBase.AddNew
Rs_DataBase.Fields!a= MohsenConvertor.Convert_To_Windows(Rs_Fox.Fields!a Revers_Result_NoRevers)
Rs_DataBase.Fields!b= MohsenConvertor.Convert_To_Windows(Rs_Fox.Fields!b Revers_Result_NoRevers)
p:
Rs_DataBase.Update
Rs_Fox.MoveNext
Next i
تو اين حلقه رفع خطا انجام ميشه اما Next i بعدي انجام نميشه و از حلقه خارج ميشه. :متعجب:
کسي مي تونه منو راهنمايي کنه؟؟؟:متفکر:
با تشکر