http2 > 31-07-19, 01:39 PM
Public Sub CheckLinkTbales()
Dim strTest As String
Dim db As Database
Set db = CurrentDb
Dim td As TableDef, MyStr
Dim msgs As Variant
For Each td In db.TableDefs
If Len(td.Connect) = 0 Then
msgs = MsgBox(Mid(td.Connect, 11), vbOKCancel)
If msgs = vbOK Then
MsgBox "exit"
Exit For
End If
Else
MsgBox "sai"
Exit For
End If
Next td
End Sub
ongke0711 > 31-07-19, 02:05 PM
http2 > 31-07-19, 02:31 PM
AnNguyen > 31-07-19, 03:08 PM
(31-07-19, 02:05 PM)ongke0711 Đã viết: Tôi không hiểu sao bạn lại thích dùng hàm Msgbox() trong code vậy. Muốn kiểm tra câu lệnh có đúng không thì dùng Debug.Print.Bác cho em hỏi chút ạ, Dùng Msgbox có vấn đề gì ạ, vì em viết code thông báo hay gì em toàn để bật ra MSgbox hết ạ.
Nếu CSDL có 30 chục cái Table thì nó hiện 30 cái msgbox để chọn Yes, No à? Chưa kể bạn còn dùng sai hàm này.
http2 > 31-07-19, 04:58 PM
Public Sub CheckLinkTbales()
Dim strTest As String
Dim db As Database
Set db = CurrentDb
Dim td As TableDef, MyStr
Dim Msgs As Variant
For Each td In db.TableDefs
If Len(td.Connect) > 0 Then
strTest = Dir(Mid(td.Connect, 11))
If Len(strTest) = 0 Then
Msgs = MsgBox("không thấy dữ liệu: " & Mid(td.Connect, 11) , vbOKOnly, "Waring")
If Msgs = vbOK Then
DoCmd.OpenForm "frmGetPath"
Exit For
End If
End If
Else
Msgs = MsgBox(mid(td.Connect), vbOKOnly)
If Msgs = vbOK Then
DoCmd.OpenForm "frmGetPath"
End If
Exit For
End If
Next
End Sub
mrsiro > 31-07-19, 05:46 PM
ongke0711 > 31-07-19, 07:48 PM
(31-07-19, 03:08 PM)AnNguyen Đã viết:(31-07-19, 02:05 PM)ongke0711 Đã viết: Tôi không hiểu sao bạn lại thích dùng hàm Msgbox() trong code vậy. Muốn kiểm tra câu lệnh có đúng không thì dùng Debug.Print.Bác cho em hỏi chút ạ, Dùng Msgbox có vấn đề gì ạ, vì em viết code thông báo hay gì em toàn để bật ra MSgbox hết ạ.
Nếu CSDL có 30 chục cái Table thì nó hiện 30 cái msgbox để chọn Yes, No à? Chưa kể bạn còn dùng sai hàm này.
Em chưa hiểu được về cái Debug.Print.
ongke0711 > 31-07-19, 09:03 PM
(31-07-19, 04:58 PM)http2 Đã viết: Thân Chào Anh . em đã nghiên cứu hết rồi . chỉ có kiểm tra xem có table hay không , nếu có rồi thì thôi . không có thì link table mới . không có cái nào là kiểm tra đường link tables đúng hay sai cả . hiu hiu .
Giờ chỉ có cách là làm cách nào lấy được đường link của cái table là em có thể làm típ phần sau . giờ dang lấn cứng ngây đó . còn cái "mid(td.connect,11) đúng là bắt link của table nhưng không ra cái gì cả trắng bóc . nhưng sử dụng "len(td.connect) thì nó chuẩn . híc nó cho ra là "1.doc" đúng nhức đầu .
Mã PHP:Public Sub CheckLinkTbales()
Dim strTest As String
Dim db As Database
Set db = CurrentDb
Dim td As TableDef, MyStr
Dim Msgs As Variant
For Each td In db.TableDefs
If Len(td.Connect) > 0 Then
strTest = Dir(Mid(td.Connect, 11))
If Len(strTest) = 0 Then
Msgs = MsgBox("không thấy dữ liệu: " & Mid(td.Connect, 11) , vbOKOnly, "Waring")
If Msgs = vbOK Then
DoCmd.OpenForm "frmGetPath"
Exit For
End If
End If
Else
Msgs = MsgBox(mid(td.Connect), vbOKOnly)
If Msgs = vbOK Then
DoCmd.OpenForm "frmGetPath"
End If
Exit For
End If
Next
End Sub
http2 > 01-08-19, 12:35 PM
ongke0711 > 02-08-19, 09:49 AM
(01-08-19, 12:35 PM)http2 Đã viết: Dạ em cám ơn anh . hôm qua em đã dùng cách khác . là kiểm tra 1 table nào đó trong database . nếu nó còn đó (table đó có phải là link tables hay là table không link ) thì sẽ thực hiện openReconrdset , nếu báo lỗi có nghĩa là table đó không mở được vậy thực hiện mở form linktables lại . ngược lại nếu table đó không tồn tại thì thực hiện mở form linktables thẳng luôn . em bẩy lỗi ngây OpenReconrdset .
cám ơn anh đã chỉ em dùng id.connect.