• Lệnh Docmd chỉ mở bảng mà không tự động mở bảng đó`
  • 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 ạ  027 027
  • 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.