返回列表 上一主題 發帖

顯示標記資料

顯示標記資料

請問各位先進,如何於sheet2 逐一將動態欄中有標示#的姓名顯示出來,謝謝! 顯示標記資料.rar (5.51 KB)

這種表格, 建議用VBA試試!

Sub TEST()
Dim R&, x&, y&, T$, xR As Range, xH As Range
[Sheet2!A:C].ClearContents
Set xH = [Sheet2!A1]
xH.Resize(1, 3) = Array("樓層", "序", "姓名")
R = Sheets("Sheet1").UsedRange.Rows.Count
For x = 2 To 14 Step 6
  For y = 4 To R
    Set xR = [Sheet1!A1].Cells(y, x)
    If xR = 1 Then T = xR(1, 0) & ""
    If xR(1, 3) = "#" Or xR(1, 4) = "#" Then
     Set xH = xH(2)
     xH.Resize(1, 3) = Array(T, xR, xR(1, 2))
    End If
  Next y
Next x
End Sub
EXCEL參考資料:
http://blog.xuite.net/smile1000mile/blog

TOP

回復 2# 准提部林


    感謝准大的指教,用函數公式不知可否,謝謝!!

TOP

回復 3# shan0948


Sheet2.A1.陣列公式:只取〔姓名
=INDIRECT(TEXT(RIGHT(SMALL(IF((Sheet1!D$3:P$3="動態")*((Sheet1!E$4:Q$36="#")+(Sheet1!D$4:P$36="#")),COLUMN(C:O),99)*100001+ROW($4:$36)*100,ROW(A1)),5),"""sheet1!""\R0C00"),)&""
 
<陣列公式輸入法> 
輸入或修改公式完成後,游標留在〔編輯列〕,先不要按Enter,
同時按住〔Shift + Ctrl〕不放,再按〔Enter〕。
EXCEL參考資料:
http://blog.xuite.net/smile1000mile/blog

TOP

回復 4# 准提部林


    准大好,經指導的函數公式在測試後,可以顯示標記之資料,不過公式有點繁雜,需要一點時間消化,謝謝感恩!!

TOP

回復 2# 准提部林
請教准大,這句If xR = 1 Then T = xR(1, 0) & ""為何可以找到101,102...

TOP

回復 6# 千暉尋


〔編號〕為合併格,與右一格〔序號.1〕同一列,
xR迴圈時,遇到序號1時,取其〔左一格〕值,納入變數T!
EXCEL參考資料:
http://blog.xuite.net/smile1000mile/blog

TOP

回復 7# 准提部林
大概了解了,將理解說明如下:每次迴圈找到1時就就將左側的編號賦值給T(所以第一次找到1時T值為101),底下的2,3,4,5的T值都是相同的(不會改變),直到又碰到另一個1時(第二次時T值就更改為102)...又附帶問另外一句: Set xH = xH(2)是因為最初設為A1,而往後找到資料時,所以須往下一列, 設定為新的xH,以便放入資料, 即xH是會不斷往下移動,不斷膨脹的變數.
不知道這樣理解對不對!
大大的語法簡潔有力,每每都有驚豔的感覺!謝謝准大的耐心教導!

TOP

回復 8# 千暉尋


正解!^ ^

xH 為上任總統,任期到了,當交給下任總統 xH(2)!
EXCEL參考資料:
http://blog.xuite.net/smile1000mile/blog

TOP

        靜思自在 : 並非有錢魷是快樂,問心無愧心最安。
返回列表 上一主題