-
Lệnh Docmd chỉ mở bảng mà không tự động mở bảng đó`
killitmore > 13-12-17, 11:12 AM
Em sử dụng sub sau để tính toán
Mã:Sub pre_computation_id_2() 'this sub will perform fair values calculation (See TECH_PRE_COMPUTATION table)
Dim pbar As Form_FRM_PROGRESS_BAR
If MsgBox("Please make sure that you finish all the preparation for fair values calculation before processing", vbOKCancel) = vbCancel Then
MsgBox Prompt:="Please do the following tasks: update market price, define spread and update curve infos."
DoCmd.OpenForm "FRM_SPREAD_DEFINE"
DoCmd.OpenTable "MKT_BOND_PRICES"
Exit Sub
End If
'Run the fair value calculation then dump result into MKT_FAIR_VALUE table
MsgBox Prompt:="Please be patient. Fair values calculation might take a while!"
Set pbar = New Form_FRM_PROGRESS_BAR ' create new instance of Progress Bar
pbar.init 100, PBarMode_Percent, "Calculating. Please wait..."
pbar.CurrentProgress = 15
DoCmd.SetWarnings False
CurrentDb.Execute "QRY_INSERT_MKT_PRICE_INTO_FAIR_VALUE_TABLE"
pbar.CurrentProgress = 30
CurrentDb.Execute "QRY_INSERT_FAIR_VALUE_BY_BENCHMARK_INTO_FAIR_VALUE_TABLE"
pbar.CurrentProgress = 50
DoCmd.OpenTable "MKT_FAIR_VALUE", acViewNormal, acReadOnly
DoCmd.SetWarnings True
End Sub
Cuối sub em có sử dụng câu lệnh
Mã:DoCmd.OpenTable "MKT_FAIR_VALUE", acViewNormal, acReadOnly
Để mở 1 table đã được tạo từ trước. Tuy nhiên, table được mở nhưng lại không được tự động hiển thị lên màn hình.
Thông thường lệnh Docmd.OpenTable sẽ tự động mở bảng và hiển thị bảng đó lên màn hình.
Các cao thủ giải thích giúp em lý do tại sao lại bị thế không ạ -
RE: Lệnh Docmd chỉ mở bảng mà không tự động mở bảng đó`
ongke0711 > 13-12-17, 12:14 PM
Không ai mở table cả. Đưa nó vô Form rồi mở lên nhé. -
RE: Lệnh Docmd chỉ mở bảng mà không tự động mở bảng đó`
killitmore > 13-12-17, 03:04 PM
(13-12-17, 12:14 PM)ongke0711 Đã viết: Không ai mở table cả. Đưa nó vô Form rồi mở lên nhé.
Bác ongke0711 có thể giải thích cho em tại sao lại không nên mở table không ạ?
Ở đây Sub em viết là để tính toán cho bảng MKT_FAIR_VALUE nên em muốn sau khi tính xong mở cái bảng ý lên cho User xem kết quả tính toán ra và chỉnh sửa bằng tay nếu muốn. -
RE: Lệnh Docmd chỉ mở bảng mà không tự động mở bảng đó`
duynamvnn1208 > 13-12-17, 04:22 PM
Đơn giản nhất vì access hay bất kì một phần mềm giao tiếp nào nó cũng dùng Form để giao tiếp với user.
Giao diện tùy biến hơn và người sử dụng sẽ nhìn cụ thể hơn.
Giả sử trong table có các mã khóa người sử dụng không hiểu thì sao? Ta có thể ẩn nó đi bằng Query hay Form được nhưng Table đâu có được.
Em có thể xuất Query Form Report nhưng không nên xuất bảng ra. Bảng chỉ là kho nguyên liệu cho người lập trình ngồi sửa thôi.
Trong trường hợp để user thay đổi thì nên dùng Form.