返回列表 上一主題 發帖

[發問] 可自定表單 全文檢索?

版主大大您好:

請問如何能讓全文檢索表單的
Listbox也能具有左右捲動功能呢?

感謝您!

TOP

dafa 大大您好:

謝謝您的說明。
感恩!

TOP

CARGOTEST.rar (111.32 KB) 各位大大好:

  版主大大提供的全文檢索
功能實在太好用了。
  但是小弟有一問題一直無法
突破,想請各位大大幫小弟如何
克服此項問題。
  小弟是直接由MDB資料庫取出
大批資料,但是在TEXTBOX1內
輸入資料時,會出現

執行階段錯誤13
型態不符合
Private Sub TextBox1_Change()

    Dim Ar()
    Dim E As Range
    Dim mSht1 As Worksheet
   
    Set mSht1 = Worksheets("TEST")   
    If TextBox1 <> "" Then
        ReDim Ar(0)
        'For Each E In mSht1.UsedRange.Columns(1).Cells
        For Each E In mSht1.Range("a1", mSht1.Range("a1:d900")).Columns(1).Cells     '測試到 800 的位置是 OK
            If E Like "*" & TextBox1 & "*" Then
                Ar(UBound(Ar)) = E.Resize(, 4).Value
                ReDim Preserve Ar(UBound(Ar) + 1)
            End If
        Next
   
        If UBound(Ar) > 0 Then
            ReDim Preserve Ar(UBound(Ar) - 1)
            Ar = Application.Transpose(Application.Transpose(Ar))     '執行階段錯誤:13 型態不符合
            ListBox1.List = Ar
            ListBox1.Visible = True
        Else
            Label1.Caption = ""
            ListBox1.Visible = False
        End If
    Else
        Label1.Caption = ""
        ListBox1.Visible = False   
    End If   
End Sub



謝謝各位大大!

TOP

謝謝版主大大。
小弟依版主大大的提示
做了如下的改變
一、複製TEST工表並且
將工作表命名為"IV"
set mSht1=worksheets("IV")
二、改為
For Each E In  mSht1.Range("a1:d900").Columns(1).Cells
三、以a1:d900的範圍為主執行結果如下:
輸入一個字元時
可執行→F、J、Q、V、Z
不可執行→A、C、E、G、H、L、M、N、O、R、T、U、W、Y
            '執行階段錯誤:13 型態不符合
查詢結果空白→B、D、I、K、P、S、X
四、小弟也使用轉換函數CSTR將
第一欄做一轉換也是徒勞無功。

因此,複製TEST工表並且
將工作表命名為"IV"
小弟也實在看不出有何改變
之呢?

依小弟的資質,我想是無法領
會版主的提示呢?
盼版主大大能再明示其差異之處。

感恩版主大大。

TOP

本帖最後由 dechiuan999 於 2012-6-4 08:35 編輯

謝謝二位版主大大。

GBKEE版主大大提供的移動複製→建立副本
是一個好方法。也是小弟第一次學習到
如何使用到它的方式。更重要的是
它會出現警語。因此,也就是說
如果要避免此問題的出現,小弟想到有二個方式
一、
就是在MDB資料庫取出之前,利用SQL語法
針對取出之貨名引用MID就可限制取出字串長度
二、
對工作表COPY至另一工作表之後訧可排除255字元了。


HSIEH大大:
下列說明:
之所以陣列會出現錯誤,是因為儲存格內容字串長度超過256個字元所導致
A886含有276個字元
超出了EXCEL的規格限制

小弟不明白的地方是,
如果儲存格有字串長度的限制,
為何還能由資料庫轉入呢?
.Range("a1").CopyFromRecordset mRst

感恩二位大大。

TOP

        靜思自在 : 忘功不忘過,忘怨不忘恩。
返回列表 上一主題