office交流網(wǎng)--QQ交流群號及微信交流群

Access培訓(xùn)群:792054000         Excel免費交流群群:686050929          Outlook交流群:221378704    

Word交流群:218156588             PPT交流群:324131555

微信交流群(請用微信掃碼)

        

通過VBA代碼動態(tài)設(shè)置Access報表Graph控件的數(shù)據(jù)源

2002-04-04 19:11:00
tmtony-Office交流網(wǎng)
原創(chuàng)
6944

問題:

如何通過程序動態(tài)設(shè)置報表中GRAPH控件的數(shù)據(jù)源?能否寫出具體的設(shè)置語句 我的GRAPH就是微軟OFFICE 2000自帶的。

tmtony

1. 初次嘗試:

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

     caijun64 回復(fù) 
     不行,我就是這樣做的,但不行,出錯,錯誤信息為:“運行時錯誤2455,你輸入的表達式對屬性rowsource的引用無效?!?。

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


2. 再次嘗試:
    我找到我原來的有圖表的報表程序,發(fā)現(xiàn)我說錯一件事。
    圖表的rowsource在程序中是無法真正動態(tài)產(chǎn)生的(我為此找過很長一段時間啦,微軟也沒給過正確答案給我)
    我現(xiàn)在所謂的動態(tài)生成是生成它的源,即圖表綁定到一個查詢,你動態(tài)改變這個查詢
    改變查詢的方法:

      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


     這是 真正動態(tài)生成圖表數(shù)據(jù)源,且用于網(wǎng)絡(luò)環(huán)境,可針對不同用戶生成不同的SQL,動態(tài)設(shè)定圖表數(shù)據(jù)源。

3. 其它實現(xiàn)方法: 
    還有種方式就是先隱藏打開到設(shè)計狀態(tài),然后改變rowsource 后,再關(guān)閉打開到預(yù)覽方式
    這是我當時想的,但因為在MDB方式, 我覺得上面的方式會更好。
    其它我還找不到好的方法

分享
文章分類
聯(lián)系我們
聯(lián)系人: 王先生
Email: 18449932@qq.com
QQ: 18449932
微博: officecn01
移動訪問