設(shè)為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

12下一頁
返回列表 發(fā)新帖
查看: 3983|回復(fù): 14
打印 上一主題 下一主題

[查詢] 誰有VBA學(xué)習(xí)資料,給咱發(fā)一份.

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2011-3-8 21:56:14 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本帖最后由 wangxy689 于 2011-5-11 23:05 編輯

誰有VBA學(xué)習(xí)資料,給咱發(fā)一份.
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享分享 分享淘帖 訂閱訂閱
2#
發(fā)表于 2011-3-9 00:37:23 | 只看該作者
本帖最后由 roych 于 2011-3-9 01:03 編輯

俺的想法是,先隨機抽取5項20%的數(shù)據(jù),再據(jù)此做聯(lián)合查詢,從而得到每項均20%的數(shù)據(jù)……

或許子查詢也是個不錯的想法吧,不過暫沒時間去想。不知道老漢版主有沒有更高明的辦法,人家可是指定您來回答的了,別讓LZ失望噢。

PS:
好像理解錯題意了。這里只是對5項分別取各抽樣20%,不一定每個工號都是平均的(如果非要這么細(xì)化,LZ不如用Excel處理,按工號排序后用數(shù)據(jù)透視表試試看?) ,再說了,某些員工只有一項,怎么可能都有20%呢?(*^__^*) 嘻嘻……

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?注冊

x
3#
發(fā)表于 2011-3-9 08:21:53 | 只看該作者
wangxy689 發(fā)表于 2011-3-8 21:56
我這個問題是一個單位有20多個人對應(yīng)各自的受理工號,公司的受理類型有5種(退貨型、換貨型、維修保養(yǎng)型、維 ...




本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?注冊

x
4#
發(fā)表于 2011-3-9 08:30:56 | 只看該作者
roych 發(fā)表于 2011-3-9 00:37
俺的想法是,先隨機抽取5項20%的數(shù)據(jù),再據(jù)此做聯(lián)合查詢,從而得到每項均20%的數(shù)據(jù)……

或許子查詢也是個 ...

Sub 抽樣查詢()
Dim ssql As String
Dim n As Long
Dim i As Long
Dim j As Long
Dim str As String
Dim strwh As String
If IsNull(Me.年度.Value) = False And IsNull(Me.月度.Value) = False And IsNull(Me.抽樣比率.Value) = False Then
    ssql = "DELETE * from 臨時表"
    CurrentDb.Execute ssql
    str = "ID, 流水序列號, 產(chǎn)品單號, 客戶姓名, 預(yù)估金額, 給付方式, 受理類型, 受理員工號, 申請時間"
    For i = 0 To Me.受理類型.ListCount - 1
        For j = 0 To Me.受理員工號.ListCount - 1
            strwh = "year(申請時間)=" & Me.年度.Value
            strwh = strwh & " and month(申請時間)=" & Me.月度.Value
            strwh = strwh & " and 受理類型='" & Me.受理類型.Column(0, i) & "'"
            strwh = strwh & " and 受理員工號='" & Me.受理員工號.Column(0, j) & "'"
            n = Round(DCount("*", "日常數(shù)據(jù)", strwh) * Me.抽樣比率.Value, 0)
            If n > 0 Then
                ssql = "INSERT INTO 臨時表 ( " & str & " ) "
                ssql = ssql & "SELECT TOP " & n & " " & str
                ssql = ssql & " FROM 日常數(shù)據(jù) "
                ssql = ssql & "WHERE " & strwh
                ssql = ssql & " ORDER BY Rnd([ID])"
                CurrentDb.Execute ssql
            End If
        Next
    Next
Else
    MsgBox "請選擇抽樣查詢年度、月度、抽樣比率!"
End If
End Sub

如果對數(shù)量極少的抽樣樣本,可以考慮將n設(shè)置為如下:

n = Int(DCount("*", "日常數(shù)據(jù)", strwh) * Me.抽樣比率.Value) - (DCount("*", "日常數(shù)據(jù)", strwh) * Me.抽樣比率.Value - Int(DCount("*", "日常數(shù)據(jù)", strwh) * Me.抽樣比率.Value) > 0)


這樣可以保證最少抽到一條記錄。
5#
發(fā)表于 2011-3-9 09:18:30 | 只看該作者
回復(fù) todaynew 的帖子

子查詢試了一下,感覺運行較慢?磥沓司幊蹋菜茮]有更好的辦法了。
6#
 樓主| 發(fā)表于 2011-3-9 18:58:22 | 只看該作者
太感謝了,讓我困惑了好久的問題終于解決了,我一定要在論壇上好好跟老師學(xué),謝謝了。
7#
 樓主| 發(fā)表于 2011-3-10 21:13:34 | 只看該作者
本帖最后由 wangxy689 于 2011-3-10 21:18 編輯

今天我在老師做的窗體上增加了兩個按鈕,其中一個按鈕時導(dǎo)出EXCEL表格,我是用宏做的 OutputTo,出現(xiàn)的問題是雖然導(dǎo)出了EXCEL表格,但是不是子窗體上的記錄,是全部記錄。老師幫我看看是什么原因,請教教我把。

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?注冊

x
8#
發(fā)表于 2011-3-11 09:03:21 | 只看該作者
用了個紅塵的通用導(dǎo)出函數(shù)

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?注冊

x
9#
發(fā)表于 2011-3-11 09:32:00 | 只看該作者
本帖最后由 todaynew 于 2011-3-11 09:34 編輯
wangxy689 發(fā)表于 2011-3-10 21:13
今天我在老師做的窗體上增加了兩個按鈕,其中一個按鈕時導(dǎo)出EXCEL表格,我是用宏做的 OutputTo,出現(xiàn)的問題是 ...


有十多種處理類似問題的方法。
最簡單的可以看看紅塵如煙關(guān)于用查詢導(dǎo)入導(dǎo)出的方法。地址:http://ctxi.cn/forum-viewthread-tid-93430-highlight-%D2%BB%BE%E4%B2%E9%D1%AF%B4%FA%C2%EB%CA%B5%CF%D6Excel%CA%FD%BE%DD%B5%BC%C8%EB%B5%BC%B3%F6.html
10#
發(fā)表于 2011-3-11 09:41:01 | 只看該作者
老頭真是精神好!
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則

QQ|站長郵箱|小黑屋|手機版|Office中國/Access中國 ( 粵ICP備10043721號-1 )  

GMT+8, 2024-10-23 10:27 , Processed in 0.088233 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表