亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 辦公 > Excel > 正文

使用Excel用戶窗體查找工作表記錄

2024-08-23 19:48:20
字體:
來源:轉載
供稿:網友

今天介紹在用戶窗體中查找工作表中滿足特定條件的所有記錄,如下圖所示,在工作表Sheet1中,姓名為“張三”的共有三條記錄,在姓名右側的文本框中輸入“張三”后,將自動顯示第1條記錄的相關內容,然后可以單擊“前一條”和“后一條”按鈕來回顯示相關的記錄。

    首先,使用Find方法根據查找條件查找到滿足條件的所有記錄,并將其賦值給Range變量。接著,使用PRoperty Set語句創建的自定義屬性將Range變量存儲的記錄區域傳遞給用戶窗體。為了確保引用的記錄區域與工作表中出現的順序相同,在Find方法中使用了After參數并將其值設置為搜索區域的最后一個單元格,這樣Find方法將從單元格區域的第一個單元格開始搜索。

    將用戶窗體命名為UPos,其中的一些控件及其名稱為:姓名文本框(txtName)、工作內容文本框(txtWork)、共有記錄的文本框(txtY)、第幾條記錄的文本框(txtX)、前一條按鈕(cmdPrev)、后一條按鈕(cmdNext),還有一些標簽控件。

    在標準模塊中輸入下列代碼:

Sub ShowPos()
    Dim ufPos As UPos '用戶窗體變量
    Dim rFound As Range '存儲當前找到的單元格
    Dim rNameRange As Range '要搜索的單元格區域
    Dim sFirstAdd As String '第一個被找到的單元格的地址
    Dim rAllFound As Range '所有找到的單元格
   
    '從用戶處獲取數據,這里為了介紹方便采用了硬編碼
    Const strName As String = "張三"
 
    Set rNameRange = Sheet1.Range("A2:A8")
 
    '查找
    Set rFound = rNameRange.Find(strName, rNameRange(rNameRange.Cells.Count), xlValues, xlWhole)
 
    '如果找到
    If Not rFound Is Nothing Then
        '存儲第一個找到的單元格的地址
        sFirstAdd = rFound.Address
        '添加找到的單元格到所有找到的單元格區域中
        Set rAllFound = rFound
        '繼續查找直到循環到開始處為止
        Do
            Set rFound = rNameRange.FindNext(rFound)
            If rFound.Address <> sFirstAdd Then
                Set rAllFound = Union(rAllFound, rFound)
            End If
        Loop Until rFound.Address = sFirstAdd
 
        '創建用戶窗體
        Set ufPos = New UPos
 
        '傳遞單元格區域到用戶窗體
        Set ufPos.AllFound = rAllFound
 
        ufPos.Initialize
        ufPos.Show
    Else
        MsgBox "沒有找到匹配的數據!"
    End If
 
    Set ufPos = Nothing
 
End Sub

    在用戶窗體模塊中,聲明一些模塊級的變量來包含傳遞的區域以及當前顯示的區域。 

Private mrAllFound As Range
Private mrCurrent As Range
 
Property Set AllFound(RHS As Range)
    Set mrAllFound = RHS
End Property

    在顯示用戶窗體之前,要初始化該窗體,使用查找到的第一條記錄填充窗體中的相應控件。 

Public Sub Initialize()
    '設置當前記錄為第一條記錄
    If Not mrAllFound Is Nothing Then
        Set mrCurrent = mrAllFound(1)
        Me.txtName.Text = mrCurrent.Value
        Me.txtWork.Text = mrCurrent.Next.Value
        Me.txtY.Text = mrAllFound.Cells.Count
        Me.txtX.Text = 1
    End If
End Sub

    前一條按鈕和后一條按鈕使用FindPrevious方法和FindNext方法將記錄移動到合適的位置。 

Private Sub cmdNext_Click()
    '設置當前單元格
    Set mrCurrent = mrAllFound.FindNext(mrCurrent)
 
    Me.txtName.Text = mrCurrent.Value
    Me.txtWork.Text = mrCurrent.Next.Value
 
    '增加計數器值
    Me.txtX.Text = Me.txtX.Text + 1
End Sub
 
Private Sub cmdPrev_Click()
    Set mrCurrent = mrAllFound.FindPrevious(mrCurrent)
    Me.txtName.Text = mrCurrent.Value
    Me.txtWork.Text = mrCurrent.Next.Value
    Me.txtX.Text = Me.txtX.Text - 1
End Sub

    最后,當第幾條文本框中的值變化時,啟用或禁用按鈕使得用戶不能試圖到達不存在的記錄。 

Private Sub txtX_Change()
    '啟用/禁用按鈕
    If Me.txtX.Text = 1 Then
        Me.cmdPrev.Enabled = False
    Else
        Me.cmdPrev.Enabled = True
    End If
 
    If Me.txtX.Text = Me.txtY.Text Then
        Me.cmdNext.Enabled = False
    Else
        Me.cmdNext.Enabled = True
    End If
End Sub


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产一区二区三区在线看| 国产精品免费小视频| 成人免费视频网址| 午夜精品免费视频| 午夜精品久久久99热福利| 亚洲人成电影在线播放| 久久电影一区二区| 自拍偷拍亚洲区| 亚洲一区二区三区久久| 欧美大成色www永久网站婷| 亚洲乱码国产乱码精品精天堂| 91美女片黄在线观| 国产成人福利夜色影视| 91av免费观看91av精品在线| 国产欧美一区二区三区在线看| 欧美另类精品xxxx孕妇| 亚洲高清av在线| 久久综合久久八八| 国产亚洲欧美一区| 亚洲一区二区久久久久久| 成人动漫网站在线观看| 中文字幕免费国产精品| 中国人与牲禽动交精品| 日韩av网址在线| 日韩精品在线免费观看| 日本成熟性欧美| 午夜精品在线观看| 国产一区二区三区视频在线观看| 国产91精品青草社区| 日韩欧美综合在线视频| 欧美一级视频在线观看| 韩国19禁主播vip福利视频| 91免费视频国产| 高清在线视频日韩欧美| 国产日韩欧美视频| 91天堂在线视频| 黄色一区二区在线观看| 国产精品日韩久久久久| 97国产精品久久| 亚洲字幕在线观看| 色悠悠久久88| 在线观看日韩av| 亚洲电影免费观看高清完整版在线| 日韩av在线免费播放| 国产精品久久久久久av下载红粉| 日韩欧美亚洲范冰冰与中字| 亚洲精选中文字幕| 国产精品一区av| 日韩成人av在线| 日本国产高清不卡| 亚洲毛片在线免费观看| 欧美视频在线视频| 91精品国产综合久久香蕉最新版| 久久成人精品一区二区三区| 亚洲国产精品99久久| 久久久久久久久久久久久久久久久久av| 久久久久久一区二区三区| 亚洲欧美在线一区| 欧美片一区二区三区| 亚洲人成绝费网站色www| 欧美成人小视频| 欧美日韩成人免费| 亚洲精品国产电影| 欧美日韩电影在线观看| 国产精品视频久久| 欧美在线精品免播放器视频| 亚洲第一免费播放区| 国内伊人久久久久久网站视频| 国产日韩精品一区二区| 影音先锋日韩有码| 萌白酱国产一区二区| 韩国精品美女www爽爽爽视频| 欧美孕妇孕交黑巨大网站| 久久久久亚洲精品国产| 国产精品一区二区久久| 久久免费高清视频| 91国产精品电影| 欧美大片在线免费观看| 日韩中文字幕在线视频播放| 久久亚洲精品中文字幕冲田杏梨| 国产一区视频在线| 2019国产精品自在线拍国产不卡| 亚洲色无码播放| 国产精品99蜜臀久久不卡二区| 欧美在线免费看| 久久精品成人欧美大片古装| 国产精品久久久久av| 久久精品国产69国产精品亚洲| www.欧美三级电影.com| 精品国产网站地址| 欧美多人爱爱视频网站| 91国产中文字幕| 精品人伦一区二区三区蜜桃网站| 日韩电影中文字幕一区| 成人妇女免费播放久久久| 国产在线观看精品| 国产精品入口日韩视频大尺度| 亚洲第一区在线观看| 亚洲偷熟乱区亚洲香蕉av| 成人中文字幕+乱码+中文字幕| 国产成人精品一区二区| 亚洲2020天天堂在线观看| 日本最新高清不卡中文字幕| 亚洲男人天堂2023| 亚洲一区二区三区在线视频| 国产日韩精品一区二区| 亚洲精品国产精品国自产在线| 91在线视频成人| 日韩人体视频一二区| 精品国偷自产在线视频99| 久久精品在线视频| 欧美激情伊人电影| 国产精品中文久久久久久久| 日韩欧美精品网址| 精品久久久久久国产| 亚洲人成在线免费观看| 永久免费精品影视网站| 国产成人精品视频| 欧美一区二区影院| 久久久免费在线观看| 国产精品最新在线观看| 精品在线欧美视频| 久久69精品久久久久久国产越南| 俺也去精品视频在线观看| xxx成人少妇69| 中文字幕成人在线| 国产精品美女免费看| 日韩欧美在线观看| 亚洲2020天天堂在线观看| 成人午夜一级二级三级| 精品国产一区二区三区久久狼5月| 久久久久中文字幕2018| 国产精品免费福利| 美女av一区二区| 欧美黑人性视频| 国产精品久久久久7777婷婷| 日本精品在线视频| 亚洲欧美制服丝袜| 久久最新资源网| 91综合免费在线| 亚洲国产精品中文| 久久久精品在线观看| 国产精品久久久久久久久粉嫩av| 欧美亚洲日本黄色| 欧美美女操人视频| 欧美激情日韩图片| 亚洲国产高潮在线观看| 一区二区三区视频免费在线观看| 欧美成人性生活| 精品国产视频在线| 欧美中文字幕视频| 欧美大片欧美激情性色a∨久久| 国产v综合ⅴ日韩v欧美大片| 精品毛片网大全| 日韩精品免费电影| 91在线无精精品一区二区| 日韩av片永久免费网站| 久久免费成人精品视频| 中文字幕精品一区二区精品| 少妇高潮久久久久久潘金莲| 一区二区三区回区在观看免费视频| 欧美xxxwww| 国产精品青青在线观看爽香蕉| 日韩视频在线观看免费|