返回列表 上一主題 發帖

姓名按起或止及日期排列顯示

姓名按起或止及日期排列顯示

請問先進,小弟有個檔案(如附檔),需要將左表的資料,顯示成右表的排列,請問函數公式如何設定,謝謝先進! 姓名按起止日期排列.zip (9.57 KB)

回復 15# ML089


    M 大好,感謝您的回覆,您的公式有得到需要的結果,也瞭解您的意思,這方式也不失為另一種途徑,謝謝您!

TOP

回復 14# shan0948
問題:
日期 1 起:
梁鎮魯、葉漢章 2人僅顯示在 L4 ,
L5、L6、L7、L8、L9 均不顯示,
日期 1 止 也是同樣方式

回覆:
(1) 有日期位置 L4,公式結果是否符合你要的答案 ?
(2) L5、L6、L7、L8、L9 均不顯示,可以使用 白色文字及填充白色來遮蓋文字,設定上次已經說明,如下
條件式格式設定
選擇 L4:O50
工具列 - 條件式格式設定 - 新增規則 - 使用公式來決定... - 公式 = $A4=""
將填滿與字型的顏色 設為背景顏色(白色)
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 13# ML089


    M 大好,感謝指導,經測試公式設定後結果似未完全符合增加的需求,詳細說明如附檔案,謝謝! 姓名按起止日期排列-更新.zip (20.61 KB)

TOP

回復 9# shan0948

20230314 姓名按起止日期排列-更新 的複本.rar (18.39 KB)

公式L4=SUBSTITUTE(TRIM(IF($H4=L$3,$F4,"")&IF($A5=""," "&L5,""))," ","、") 右拉下拉
公式N4=SUBSTITUTE(TRIM(IF(ISERROR(FIND($G4,N$3)),"",$F4)&IF($A5=""," "&N5,""))," ","、") 右拉下拉

條件式格式設定
選擇 L4:O50
工具列 - 條件式格式設定 - 新增規則 - 使用公式來決定... - 公式 = $A4=""
將填滿與字型的顏色 設為背景顏色(白色)
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 11# shan0948


    謝謝前輩回復
公式(函數)比VBA難,後學暫幫不上忙
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

回復 10# Andy2483


    感謝先進的指導,因之前是使函數公式,故為維持一致性,可否仍使用函數公式設定,謝謝!

TOP

回復 9# shan0948


    謝謝前輩
後學練習VBA方式的解決方案如下,請前輩參考

執行結果:


Option Explicit
Sub TEST()
Dim Brr, i&, N&, T1&, T6$, T7$, T8$
Brr = Range([H4], Cells(Rows.Count, 1).End(3))
For i = 1 To UBound(Brr)
   T1 = Val(Brr(i, 1)): T6 = Trim(Brr(i, 6)): T7 = Trim(Brr(i, 7))
   T8 = Trim(Brr(i, 8))
   Brr(i, 2) = "": Brr(i, 3) = "": Brr(i, 4) = "": Brr(i, 5) = ""
   If T8 = "" Then GoTo 111
   If T1 > 0 Then
      N = i
      If T8 = "起" Then Brr(N, 2) = T6
      If T8 = "止" Then Brr(N, 3) = T6
      ElseIf T8 = "起" Then
         Brr(N, 2) = IIf(Brr(N, 2) = "", T6, Brr(N, 2) & "、" & T6)
      ElseIf T8 = "止" Then
         Brr(N, 3) = IIf(Brr(N, 3) = "", T6, Brr(N, 3) & "、" & T6)
         If T7 = "離職" Then
            Brr(N, 5) = IIf(Brr(N, 5) = "", T6, Brr(N, 5) & "、" & T6)
         End If
   End If
   If T8 = "起" And (T7 = "新進" Or T7 = "他訓轉入") Then
      Brr(N, 4) = IIf(Brr(N, 4) = "", T6, Brr(N, 4) & "、" & T6)
   End If
   If T8 = "止" And T7 = "離職" Then
      Brr(N, 5) = IIf(Brr(N, 5) = "", T6, Brr(N, 5) & "、" & T6)
   End If
111
Next
[K4].Resize(N, 5) = Brr
End Sub
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

回復 6# hcm19522


    先進好,之前的資料顯示函數公式,因實際需要增加條件判斷,原函數公式請問要如何修正,詳細說明如附檔,謝謝! 姓名按起止日期排列-更新.zip (14.19 KB)

TOP

回復 6# hcm19522


   非常感謝先進的指導,經測試後符合需求,助益甚大,感恩謝謝!

TOP

        靜思自在 : 地上種了菜,就不易長草;心中有善,就不易生惡。
返回列表 上一主題