lulyen
Thành viên mới

- Tham gia
- 29/10/08
- Bài viết
- 35
- Được thích
- 2
Các cao thủ giúp em bẫy cái lỗi Run-time error này với.
Em có một File nguồn là ABC.xls làm sao để khi chạy chương trình mà tìm không thấy File ABC.xls thì sẽ ra một thông báo và thoát ra khỏi Sub, đoạn code ở bên dưới (Đoạn có mầu đỏ):
Sub WordArt9_Click()
Dim lsSQL As String, cnn As Object, lrs As Object
Set cnn = CreateObject("ADODB.Connection")
Set lrs = CreateObject("ADODB.Recordset")
With cnn
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & ThisWorkbook.Path & _
"\ABC.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";"
.Open
End With
'Các bác giúp em chỗ này Không tài nào bẫy được kể cả khi file ABC.xls tồn tại nó vẫn hiện thông báo
If ThisWorkbook.Name <> "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & ThisWorkbook.Path & _
"\ABC.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";" Then
MsgBox "khong thay file " & ThisWorkbook.Path & "\ABC.xls" & " dau ca"
Exit Sub
End If
With lrs
.ActiveConnection = cnn
lsSQL = "SELECT * " & _
"FROM [ABC$] "
.Open lsSQL
End With
With Sheets("Sheet1")
.[A2:AW2].ClearContents
.[A2].CopyFromRecordset lrs
End With
lrs.Close: Set lrs = Nothing
cnn.Close: Set cnn = Nothing
End Sub
Kính nhờ các bác!
Em có một File nguồn là ABC.xls làm sao để khi chạy chương trình mà tìm không thấy File ABC.xls thì sẽ ra một thông báo và thoát ra khỏi Sub, đoạn code ở bên dưới (Đoạn có mầu đỏ):
Sub WordArt9_Click()
Dim lsSQL As String, cnn As Object, lrs As Object
Set cnn = CreateObject("ADODB.Connection")
Set lrs = CreateObject("ADODB.Recordset")
With cnn
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & ThisWorkbook.Path & _
"\ABC.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";"
.Open
End With
'Các bác giúp em chỗ này Không tài nào bẫy được kể cả khi file ABC.xls tồn tại nó vẫn hiện thông báo
If ThisWorkbook.Name <> "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & ThisWorkbook.Path & _
"\ABC.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";" Then
MsgBox "khong thay file " & ThisWorkbook.Path & "\ABC.xls" & " dau ca"
Exit Sub
End If
With lrs
.ActiveConnection = cnn
lsSQL = "SELECT * " & _
"FROM [ABC$] "
.Open lsSQL
End With
With Sheets("Sheet1")
.[A2:AW2].ClearContents
.[A2].CopyFromRecordset lrs
End With
lrs.Close: Set lrs = Nothing
cnn.Close: Set cnn = Nothing
End Sub
Kính nhờ các bác!