m.vuong2211 > 06-04-15, 12:16 AM
Private Sub btnSearch_Click()
' Update the record source
Me.fvsubhosoedit.Form.RecordSource = "SELECT * FROM qvhoso " & BuildFilter
' Requery the subform
Me.fvsubhosoedit.Requery
End Sub
tranthanhan1962 > 06-04-15, 01:02 AM
m.vuong2211 > 06-04-15, 01:43 PM
(06-04-15, 01:02 AM)tranthanhan1962 Đã viết: Mình hiện xử dụng access 2003 nên không mở được file của bạn. Nhưng lỗi 2074 của access là: This operation is not supported within transactions.@@@1@@1. Có nghĩa là không hỗ trợ trong giao dịch. Bạn có thể đổi phương thức Me.fvsubhosoedit.Form.RecordSource = "SELECT * FROM qvhoso " & BuildFilter bằng 1 Query Update sau khi test Query này chay ổn bạn dùng mã:
docmd.RunSQL " SQL của query update" sẽ chắc ăn hơn
maidinhdan > 06-04-15, 03:44 PM
m.vuong2211 > 06-04-15, 05:04 PM
(06-04-15, 03:44 PM)maidinhdan Đã viết: post file Ac 2003 lên đi.
Private Sub btnClear_Click()
Dim intIndex As Integer
' Clear all search items
Me.kttencb = ""
Me.ktmahs = ""
Me.ktdiaban = ""
Me.ktnganh = ""
Me.ktloaicoso = ""
End Sub
------------------------------------
Private Sub btnSearch_Click()
' Update the record source
Me.fvsubhosoedit.Form.RecordSource = "SELECT * FROM qvhoso " & BuildFilter
' Requery the subform
Me.fvsubhosoedit.Requery
End Sub
------------------------------------
Private Sub Form_Load()
' Clear the search form
btnClear_Click
Me.kttencb.SetFocus
End Sub
-------------------------------------
Private Function BuildFilter() As Variant
Dim varWhere As Variant
varWhere = Null ' Main filter
' Check for LIKE TenCB
If Me.kttencb > "" Then
varWhere = varWhere & "[Ten] LIKE """ & Me.kttencb & "*"" AND "
End If
' Check for MaHS
If Me.ktmahs > "" Then
varWhere = varWhere & "[MaHoSo] LIKE """ & Me.ktmahs & "*"" AND "
End If
' Check for DiaBan
If Me.ktdiaban > "" Then
varWhere = varWhere & "[DiaBan] LIKE """ & Me.ktdiaban & "*"" AND "
End If
' Check for Nganh
If Me.ktnganh > "" Then
varWhere = varWhere & "[TenNganh] LIKE """ & Me.ktnganh & "*"" AND "
End If
' Check for LoaiCoSo
If Me.ktloaicoso > "" Then
varWhere = varWhere & "[LoaiCoSo] LIKE """ & Me.ktloaicoso & "*"" AND "
End If
' Check if there is a filter to return...
If IsNull(varWhere) Then
varWhere = ""
Else
varWhere = "WHERE " & varWhere
' strip off last "AND" in the filter
If Right(varWhere, 5) = " AND " Then
varWhere = Left(varWhere, Len(varWhere) - 5)
End If
End If
BuildFilter = varWhere
End Function
maidinhdan > 06-04-15, 05:46 PM
UPDATE t1 SET t1.Hoten = [Nhap ten moi can doi] WHERE (((t1.Hoten) Like "*" & [Forms]![Tenform]![txttimten] & "*") AND ((t1.Tenhang) Like "*" & [Forms]![Tenform]![txtmathang] & "*"));
tranthanhan1962 > 06-04-15, 07:17 PM
m.vuong2211 > 07-04-15, 07:56 AM
(06-04-15, 05:46 PM)maidinhdan Đã viết: Bạn tạo file Access 2003, rồi Import Table liên quan + 1 Cái form tìm của bạn...Nếu không tôi hướng dẫn bạn như thế này..
1. Câu lệnh chả lỗi đâu: Lý do lỗi là Cái tên bạn tìm ra không những có tên ở mặt hàng xăng mà còn những mặt hàng khác...Vì thế không bao giờ bạn Replace All được.
- Cách khắc phục (không sử dụng nút Replace của hệ thống nửa nhé): Tạo 1 nút command đổi tên, tạm gọi là cmddoiten; ta sử dụng luôn trường tên cán bộ mà bạn tìm đó, tạm đặt là txttimten, và text thứ 3 chỗ xăn dầu tạm gọi là txtmathang. Cuối cùng cái sub của bạn thì tham chiếu đến table nào đó tạm gọi là t1
=> ta có 3 cái:
+ cmddoiten
+ txttimten
+ txtmathang
Dán đoạn code này vào cmddoiten: rồi từ từ ngâm cứu sẽ ra thôi...làm biến làm Demo
Mã PHP:UPDATE t1 SET t1.Hoten = [Nhap ten moi can doi] WHERE (((t1.Hoten) Like "*" & [Forms]![Tenform]![txttimten] & "*") AND ((t1.Tenhang) Like "*" & [Forms]![Tenform]![txtmathang] & "*"));
Ghi chú:
- t1.Hoten : là cột tên trong table
- t1.Tenhang : là cột Tên hàng trong table
Bạn cần code đúng bài bạn thì Import như mình hướng dẫn trên rồi post lên đây. làm biến làm Demo..
maidinhdan > 07-04-15, 09:28 AM
UPDATE tvhoso SET tvhoso.NguoiDungDauCoSo = [Nhap ten moi]
WHERE (((tvhoso.NguoiDungDauCoSo) Like "*" & [Forms]![fvMainReplace]![kttencb] & "*") AND ((tvhoso.TenNganh) Like "*" & [Forms]![fvMainReplace]![ktnganh] & "*"));
UPDATE tvhoso SET tvhoso.NguoiDungDauCoSo = [Nhap ten moi]
WHERE (((tvhoso.NguoiDungDauCoSo)=[Forms]![fvMainReplace]![kttencb]) AND ((tvhoso.TenNganh)=[Forms]![fvMainReplace]![ktnganh]));
m.vuong2211 > 07-04-15, 11:32 AM
(07-04-15, 09:28 AM)maidinhdan Đã viết: Code của bạn nè
Mã PHP:UPDATE tvhoso SET tvhoso.NguoiDungDauCoSo = [Nhap ten moi]
WHERE (((tvhoso.NguoiDungDauCoSo) Like "*" & [Forms]![fvMainReplace]![kttencb] & "*") AND ((tvhoso.TenNganh) Like "*" & [Forms]![fvMainReplace]![ktnganh] & "*"));
Private Sub btnReplace_Click()
UPDATE tvhoso SET tvhoso.TenCB = Me.ktreplace
WHERE (((tvhoso.TenCB) Like "*" & [Forms]![fvMainReplace]![kttencb] & "*") And ((tvhoso.TenNganh) Like "*" & [Forms]![fvMainReplace]![ktnganh] & "*"))
End Sub