Board logo

標題: [發問] 二個欄位資料搜尋? [打印本頁]

作者: q1a2z5    時間: 2020-3-18 14:41     標題: 二個欄位資料搜尋?

請問:
在左邊資料區只要有符合尺寸欄或者顏色欄條件者,都一一列出來。
謝謝!
作者: rouber590324    時間: 2020-3-18 16:40

本帖最後由 准提部林 於 2020-3-19 13:25 編輯

DEAR SIR
如下   

Sub AAA()
Sheet1.[J6:P65536].ClearContents
X = Sheet1.[A65536].End(xlUp).Row
Y = Sheet1.[J65536].End(xlUp).Row
For M = 2 To X
If Sheet1.Cells(M, 5) = Sheet1.Cells(2, 10) Or Sheet1.Cells(M, 5) = Sheet1.Cells(2, 11) Or Sheet1.Cells(M, 6) = Sheet1.Cells(2, 12) Or Sheet1.Cells(M, 6) = Sheet1.Cells(2, 13) Then
  Sheet1.Cells(Y + 1, 10).Resize(, 7).Value = Sheet1.Cells(M, 1).Resize(, 7).Value
    Y = Y + 1
  End If
  Next
End Sub
作者: q1a2z5    時間: 2020-3-19 08:28

謝謝!但好像不能執行,我是不是哪裡弄錯了.
作者: rouber590324    時間: 2020-3-19 08:40

我於公司電腦執行無問題
但我公司電腦.無法上傳檔案予網站.
你需看不能執行之錯誤點於何處.方可看如何解決(版本問題 OR......)
作者: rouber590324    時間: 2020-3-19 08:52

DEAR SIR
更正如下

Sub AAA()
Sheet1.[J665536].ClearContents
X = Sheet1.[A65536].End(xlUp).Row
Y = Sheet1.[J65536].End(xlUp).Row
For M = 2 To X
If Sheet1.Cells(M, 5) = Sheet1.Cells(2, 10) Or Sheet1.Cells(M, 5) = Sheet1.Cells(2, 11) Or Sheet1.Cells(M, 6) = Sheet1.Cells(2, 12) Or Sheet1.Cells(M, 6) = Sheet1.Cells(2, 13) Then
   Sheet1.Cells(Y + 1, 10).Resize(, 7).Value = Sheet1.Cells(M, 1).Resize(, 7).Value
     Y = Y + 1
   End If
   Next
End Sub
作者: q1a2z5    時間: 2020-3-19 08:55

我按下執行鍵時,出現"執行階段錯誤'424'  此處需要物件"的訊息,我電腦excel版本是2016的。
謝謝!
作者: rouber590324    時間: 2020-3-19 09:43

DEAR SIR
更正如下

Sub AAA()
Sheet1.[J665536].ClearContents
X = Sheet1.[A65536].End(xlUp).Row
Y = Sheet1.[J65536].End(xlUp).Row
For M = 2 To X
If Sheet1.Cells(M, 5) = Sheet1.Cells(2, 10) Or Sheet1.Cells(M, 5) = Sheet1.Cells(2, 11) Or Sheet1.Cells(M, 6) = Sheet1.Cells(2, 12) Or Sheet1.Cells(M, 6) = Sheet1.Cells(2, 13) Then
    Sheet1.Cells(Y + 1, 10).Resize(, 7).Value = Sheet1.Cells(M, 1).Resize(, 7).Value
      Y = Y + 1
    End If
    Next
End Sub
作者: hcm19522    時間: 2020-3-19 09:53

https://blog.xuite.net/hcm19522/twblog/588987680
作者: 准提部林    時間: 2020-3-19 13:28

回復 4# rouber590324


若回復內容有代碼或公式,
在確定回復前, 將 下方[禁用表情]取消打勾, 再重新打勾,
這樣即可避免部份文字被識別為表情符號
作者: 准提部林    時間: 2020-3-19 13:52

J6/陣列公式:
=IFERROR(INDEX(A:A,SMALL(IF(MMULT(COUNTIF($J$2:$M$2,$E$2:$F$11),{1;1}),ROW($2:$11)),ROW(A1))),"")

向右選擇性貼入公式, 再下拉
作者: cypd    時間: 2020-5-27 19:49

好深奧的公式
值得好好研究...
作者: Andy2483    時間: 2023-6-1 14:37

謝謝論壇,謝謝各位前輩
後學藉此帖練習VBA陣列,學習方案如下,請各位前輩指教

執行前:
[attach]36492[/attach]

執行結果:
[attach]36493[/attach]


Option Explicit
Sub TEST()
Dim Brr, V, i&, j%, T$, R&
T = "/" & [J2] & "/" & [K2] & "/" & [L2] & "/" & [M2] & "/"
Brr = Range([G1], [A65536].End(xlUp))
For i = 2 To UBound(Brr)
   V = InStr(T, "/" & Brr(i, 5) & "/") + InStr(T, "/" & Brr(i, 6) & "/")
   If V > 0 Then R = R + 1: For j = 1 To 7: Brr(R, j) = Brr(i, j): Next
Next
[J6].Resize(R, 7) = Brr
Erase Brr
End Sub




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)