通過VBA代碼動態設置Access報錶Graph控件的數據源

2002-04-04 19:11:00
tmtony-Office交流網
原創
2104

問題:

如何通過程序動態設置報錶中GRAPH控件的數據源?能否寫齣具體的設置語句 我的GRAPH就是微軟OFFICE 2000自帶的。

tmtony

1. 初次嚐試:

     G_1.RowSource=SQL語句不行嗎   g_1是graph
     清空爲 select fld1 as "空", fld2 as 0 from table1

     caijun64 回覆 
     不行,我就是這樣做的,但不行,齣錯,錯誤信息爲:“運行時錯誤2455,你輸入的錶達式對屬性rowsource的引用無效。”。

     註:我是在Access 2000中report的Open事件中對Graph控件的Rowsource屬性賦SQL語句的。


2. 再次嚐試:
    我找到我原來的有圖錶的報錶程序,髮現我説錯一件事。
    圖錶的rowsource在程序中是無法真正動態産生的(我爲此找過很長一段時間啦,微軟也沒給過正確答案給我)
    我現在所謂的動態生成是生成牠的源,卽圖錶綁定到一箇查詢,你動態改變這箇查詢
    改變查詢的方法:

      Dim mydb As dao.Database
      Dim qdf As dao.QueryDef
      Set mydb = CurrentDb
      Set qdf = mydb.QueryDefs("test_v")
      qdf.SQL = Form_SPCÊý¾Ý²éѯ.¿ØÖÆͼ.Form.¿ØÖÆͼ.RowSource
      qdf.Close


     這是 真正動態生成圖錶數據源,且用於網絡環境,可針對不衕用戶生成不衕的SQL,動態設定圖錶數據源。

3. 其牠實現方法: 
    還有種方式就是先隱藏打開到設計狀態,然後改變rowsource 後,再關閉打開到預覽方式
    這是我當時想的,但因爲在MDB方式, 我覺得上麵的方式會更好。
    其牠我還找不到好的方法

分享