返回列表 上一主題 發帖

請問圖表如何依篩選條件並顯示最新n筆資料

回復 10# Andy2483


    開啟檔案後將筆數由100改成50時
螢幕擷取畫面 2022-07-15 224129.png

    隨意更換機台、規格、筆數時

TOP

回復 11# 074063


   猜測 應該是版本的問題
抱歉假日無法即時幫 修改 測試
依據以前的經驗猜到了問題的需求
後學所學有限 圖表的控制也是錄製出來的
請各位有興趣的前輩 幫忙
後學也想再學習
謝謝!

TOP

回復 11# 074063


    Ca ,Cp ,Cpk屬 製造能力/品保 範疇 ,後學初次接觸,也請樓主慎重求證!

在Cpk公式中加了 ABS(絕對值)   =(1-ABS(L3))*L2
依據Cpk值的含意:
製造平均值與中心值的偏差Ca 有正值.有負值,但應該都要以正值帶入Cpk
Cpk=(1-|Ca|)*Cp

附件請參考!

D1_20220718.zip (363.67 KB)

TOP

回復 13# Andy2483


    感謝Andy2483大大解答, 小弟吸收後如有疑問再煩請解惑

TOP

回復 13# Andy2483


    請教Andy2483大大問題
    1. 如果欲查詢的筆數[C3] > 實際查詢的資料筆數,
       則Chart 直接顯示實際查詢的資料筆數, 並且C3的值替換成實際查詢的資料筆數
    2. [C2] List清單來源可否改為data!B:B, 且不重複 (用VBA, 不用輔助欄)

TOP

回復 15# 074063


    試試看!

D1_20220722.zip (414.7 KB)

TOP

回復 16# Andy2483


    Andy2483 大大, 請問下拉清單去重複後可以排序嗎

TOP

回復 17# 074063


    謝謝前輩提出各種需求!後學藉此習得多種技巧!謝謝!
今日習得 文字可以比大小,其規則如排序!
清單可排序的方式修改如下:

Sub TEST_4()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.EnableCancelKey = xlDisabled
Application.EnableEvents = False
Dim Vrr, C1V, C2V, i&, Spc1rr, Spc2rr, x&
With Sheets("data")
   Vrr = .Range(.[A2], .Cells(.Cells(.Rows.Count, "B").End(xlUp).Row, "B"))
End With
C1V = [data!A2] & ","
C2V = [data!B2] & ","
For i = 1 To UBound(Vrr)
   If InStr(C1V, Vrr(i, 1) & ",") = 0 Then
      Spc1rr = Split(C1V, ",")
      For x = 0 To UBound(Spc1rr)
         If Vrr(i, 1) < Spc1rr(x) Then '
            Spc1rr(x) = Vrr(i, 1) & "," & Spc1rr(x)
            C1V = Join(Spc1rr, ",")
            Exit For
            ElseIf Vrr(i, 1) > Spc1rr(x) And Vrr(i, 1) < Spc1rr(x + 1) Then
               Spc1rr(x) = Spc1rr(x) & "," & Vrr(i, 1)
               C1V = Join(Spc1rr, ",")
               Exit For
            ElseIf Spc1rr(x + 1) = "" Then
               Spc1rr(x) = Vrr(i, 1)
               C1V = Join(Spc1rr, ",")
               Exit For
         End If
      Next
   End If
   If InStr(C2V, Vrr(i, 2) & ",") = 0 Then
      Spc2rr = Split(C2V, ",")
      For x = 0 To UBound(Spc2rr)
         If Vrr(i, 2) < Spc2rr(x) Then '
            Spc2rr(x) = Vrr(i, 2) & "," & Spc2rr(x)
            C2V = Join(Spc2rr, ",")
            Exit For
            ElseIf Vrr(i, 2) > Spc2rr(x) And Vrr(i, 2) < Spc2rr(x + 1) Then
               Spc2rr(x) = Spc2rr(x) & "," & Vrr(i, 2)
               C2V = Join(Spc2rr, ",")
               Exit For
            ElseIf Spc2rr(x + 1) = "" Then
               Spc2rr(x) = Vrr(i, 2)
               C2V = Join(Spc2rr, ",")
               Exit For
         End If
      Next
   End If
Next
If [list!I1] = "大至小排序" Then
   Spc1rr = Split(C1V, ",")
   C1V = ""
   For i = UBound(Spc1rr) - 1 To 0 Step -1
      C1V = C1V & "," & Spc1rr(i)
   Next
   
   Spc2rr = Split(C2V, ",")
   C2V = ""
   For i = UBound(Spc2rr) - 1 To 0 Step -1
      C2V = C2V & "," & Spc2rr(i)
   Next
End If
C1V = "全部機台," & C1V
With Sheets("chart").[C1].Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:=C1V
End With
With Sheets("chart").[C2].Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:=C2V
End With
Application.EnableEvents = True
Set Vrr = Nothing
Set Spc1rr = Nothing
Set Spc2rr = Nothing
End Sub

持續學習中! 請各位前輩不吝指正! 謝謝!

TOP

回復 18# Andy2483


    關於圖表題材習得Ca,Cp,Cpk....等知識


附件請參考!
請各位前輩不吝指正!

D1_20220725.zip (426.08 KB)

謝謝各位前輩!

TOP

本帖最後由 Andy2483 於 2022-8-8 16:48 編輯

1.版面稍作調整
2.增加長條圖比例
3.增加 6σ
4.增加操作做說明在儲存格註解中
Cpk=0.64製程能力不足


Cpk=1.38製程能力足夠


Cpk=1.99製程能力足夠


Cpk=3.5製程能力很足夠


單向公差製程能力很足夠


單向公差製程能力不足_精度雖高但準度差


不對稱公差製程能力很足夠


不對稱公差製程能力不足_精度雖高但準度差

TOP

        靜思自在 : 發脾氣是短暫的發瘋。
返回列表 上一主題