返回列表 上一主題 發帖

樞紐分析表-排序

回復 1# 198188
回復 2# 准提部林


    謝謝 198188前輩發表此主題與範例,謝謝 准提部林前輩指導
後學學習心得如下,請前輩再指導

清除舊資料:


執行結果:



Sub Test_A1()
Dim R&, C
'↑宣告變數:R是長整數,C是通用型變數
C = Application.Match([c1], Sheet1.[1:1], 0)
'↑令C這通用型變數是 以Match()方法回傳[C1]儲存格值 在Sheet1(源數据)表.[1:1]的位置
https://learn.microsoft.com/zh-t ... sheetfunction.match
If IsError(C) Then Exit Sub
'↑如果以IsError 函數判斷 C變數回傳(TRUE):是錯誤值,就結束程式執行
R = Sheet1.[a65536].End(3).Row - 1
'↑令R這長整數變數是 Sheet1(源數据)A欄最後一個有內容儲存格列號-1
With [c4].Resize(R, 2)
'↑以下是關於 [C4]儲存格擴展向下R變數列,擴展向右2欄範圍儲存格的程序
     .Columns(1) = Sheet1.[a2].Resize(R).Value
     '↑令該範圍儲存格第1欄儲存格值是 Sheet1(源數据)表.[A2]擴展向下R變數列儲存格值
     .Columns(2) = Sheet1.Cells(2, C).Resize(R).Value
     '↑令該範圍儲存格第2欄儲存格值是 Sheet1(源數据)表第 C變數欄/第2列儲存格,
     '向下R變數列儲存格值

     .Sort Key1:=.Item(2), Order1:=xlDescending, Header:=xlNo
     '↑令該範圍以第2欄做沒有標題的漸減排序
     .Rows(11).Resize(R).ClearContents
     '↑令該區域第11列開始擴展向下R變數列的範圍儲存格內容清除
End With
End Sub
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

本帖最後由 Andy2483 於 2023-11-6 08:40 編輯

回復 4# 198188


    後學建議以下方法
1.在圖表插入文字方塊,插入函數 =$C$1 作為文字方塊內容
2.觸發[C1]儲存格時自動執行程式碼

1.


2.



Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "C1" Then Call Test_A1
End Sub
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

        靜思自在 : 有時當思無時苦,好天要積雨來糧。
返回列表 上一主題