1
爲了瀏覽我要求分析的複雜電子表格,我需要工作表中所有當前區域的列表。 Excel的幫助並沒有給我很多線索。到目前爲止,我的解決方案是使用特殊單元函數遍歷區域,但速度很慢。如何列出一個工作表中的所有Excel當前區域
Function list_all_current_regions(work_sheet)
Dim current_region_dic As New Dictionary
Set r = work_sheet.Cells(1, 1)
For Each x In Array(xlCellTypeConstants, xlCellTypeFormulas)
Set c = work_sheet.Cells(1, 1).SpecialCells(x, 23)
For Each a In c.Areas
If Not current_region_dic.Exists(a.CurrentRegion.Address) Then
current_region_dic.Add a.CurrentRegion.Address, ""
End If
Next
Next
Set list_all_current_regions = current_region_dic
End Function
是否有更明智的方式來列出工作表中的所有當前區域?
感謝您的意見。在這種特殊情況下,我必須使用'遺留'電子表格,我不能改變,但通常這似乎是一個很好的建議,我會牢記。 – Asthmanaut
如果沒有將數據分離到數據「島」中,.CurrentRegion屬性可能會向上和/或向右收集單元格。 – Jeeped