'Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?'

Excel Python VBA雜談 2019-08-22
"

前景提要(文末提供源碼下載)

相信現在很多的小夥伴們都有接觸過Python,在學習Python的時候,我們都學到了列表和集合,Python中的集合有一個特性,就是數據不重複,有點類似Excel中的字典,那麼Excel中是否存在這樣的一個集合的概念呢?

其實Excel VBA中也是有這樣的一個概念的,應該也是叫做集合,在集合中的數據必須保證唯一,那麼我們也可以利用集合的這個特性來獲取數據的唯一值,來看看如何操作。

場景說明

"

前景提要(文末提供源碼下載)

相信現在很多的小夥伴們都有接觸過Python,在學習Python的時候,我們都學到了列表和集合,Python中的集合有一個特性,就是數據不重複,有點類似Excel中的字典,那麼Excel中是否存在這樣的一個集合的概念呢?

其實Excel VBA中也是有這樣的一個概念的,應該也是叫做集合,在集合中的數據必須保證唯一,那麼我們也可以利用集合的這個特性來獲取數據的唯一值,來看看如何操作。

場景說明

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

還是我們昨天使用過的工作表的樣式,我們今天嘗試通過其他的方式來獲取工作表某列的唯一值,我們來獲取性名列的唯一值,再之前我們學習了通過RemoveDuplicates和AdvancedFilter方法來實現,現在我們嘗試通過集合的方式來實現這樣的效果。

代碼區

Sub jihe()
On Error Resume Next
Dim ExcelSet As New Collection
For i = 2 To 23
ExcelSet.Add Cells(i, 1), Cells(i, 1).Text
Next i
For i = 1 To ExcelSet.Count
Cells(i + 1, 5) = ExcelSet.Item(i)
Next
End Sub

代碼依然是非常的簡短,代碼解析的時候,我們會詳細講解下Excel集合的用法,這裡我們來看看效果如何

"

前景提要(文末提供源碼下載)

相信現在很多的小夥伴們都有接觸過Python,在學習Python的時候,我們都學到了列表和集合,Python中的集合有一個特性,就是數據不重複,有點類似Excel中的字典,那麼Excel中是否存在這樣的一個集合的概念呢?

其實Excel VBA中也是有這樣的一個概念的,應該也是叫做集合,在集合中的數據必須保證唯一,那麼我們也可以利用集合的這個特性來獲取數據的唯一值,來看看如何操作。

場景說明

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

還是我們昨天使用過的工作表的樣式,我們今天嘗試通過其他的方式來獲取工作表某列的唯一值,我們來獲取性名列的唯一值,再之前我們學習了通過RemoveDuplicates和AdvancedFilter方法來實現,現在我們嘗試通過集合的方式來實現這樣的效果。

代碼區

Sub jihe()
On Error Resume Next
Dim ExcelSet As New Collection
For i = 2 To 23
ExcelSet.Add Cells(i, 1), Cells(i, 1).Text
Next i
For i = 1 To ExcelSet.Count
Cells(i + 1, 5) = ExcelSet.Item(i)
Next
End Sub

代碼依然是非常的簡短,代碼解析的時候,我們會詳細講解下Excel集合的用法,這裡我們來看看效果如何

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

通過上面的動圖和最終的篩選之後的結果來進行對比,證明我們的數據結果是沒有任何的問題的。

代碼解析

來看看今天的代碼是如何實現的,我們這裡要學習一個集合的概念,在Excel中也有一個集合的概念,就是Collection

但是他並不能夠直接使用,我們需要現聲明,這個和大家熟悉的字典之類的是一樣的方式

Dim ExcelSet As New Collection

這就是申明的方式,非常的簡單

然後我們就可以效仿字典的方式,通過循環的結構往集合中添加數據,和字典一樣,集合的值也只能存在唯一一個

所以在最開始我們需要先進行錯誤處理

On Error Resume Next

如果添加了相同的值,那麼肯定會報錯的,所以要忽略錯誤內容,跳過繼續添加下面的數據,最終一個循環結束之後,我們就得到了整個集合

"

前景提要(文末提供源碼下載)

相信現在很多的小夥伴們都有接觸過Python,在學習Python的時候,我們都學到了列表和集合,Python中的集合有一個特性,就是數據不重複,有點類似Excel中的字典,那麼Excel中是否存在這樣的一個集合的概念呢?

其實Excel VBA中也是有這樣的一個概念的,應該也是叫做集合,在集合中的數據必須保證唯一,那麼我們也可以利用集合的這個特性來獲取數據的唯一值,來看看如何操作。

場景說明

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

還是我們昨天使用過的工作表的樣式,我們今天嘗試通過其他的方式來獲取工作表某列的唯一值,我們來獲取性名列的唯一值,再之前我們學習了通過RemoveDuplicates和AdvancedFilter方法來實現,現在我們嘗試通過集合的方式來實現這樣的效果。

代碼區

Sub jihe()
On Error Resume Next
Dim ExcelSet As New Collection
For i = 2 To 23
ExcelSet.Add Cells(i, 1), Cells(i, 1).Text
Next i
For i = 1 To ExcelSet.Count
Cells(i + 1, 5) = ExcelSet.Item(i)
Next
End Sub

代碼依然是非常的簡短,代碼解析的時候,我們會詳細講解下Excel集合的用法,這裡我們來看看效果如何

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

通過上面的動圖和最終的篩選之後的結果來進行對比,證明我們的數據結果是沒有任何的問題的。

代碼解析

來看看今天的代碼是如何實現的,我們這裡要學習一個集合的概念,在Excel中也有一個集合的概念,就是Collection

但是他並不能夠直接使用,我們需要現聲明,這個和大家熟悉的字典之類的是一樣的方式

Dim ExcelSet As New Collection

這就是申明的方式,非常的簡單

然後我們就可以效仿字典的方式,通過循環的結構往集合中添加數據,和字典一樣,集合的值也只能存在唯一一個

所以在最開始我們需要先進行錯誤處理

On Error Resume Next

如果添加了相同的值,那麼肯定會報錯的,所以要忽略錯誤內容,跳過繼續添加下面的數據,最終一個循環結束之後,我們就得到了整個集合

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

如果你允許展開的話,你會發現對應的每一個item的值就是某一個姓名,比方說我們展開item5

"

前景提要(文末提供源碼下載)

相信現在很多的小夥伴們都有接觸過Python,在學習Python的時候,我們都學到了列表和集合,Python中的集合有一個特性,就是數據不重複,有點類似Excel中的字典,那麼Excel中是否存在這樣的一個集合的概念呢?

其實Excel VBA中也是有這樣的一個概念的,應該也是叫做集合,在集合中的數據必須保證唯一,那麼我們也可以利用集合的這個特性來獲取數據的唯一值,來看看如何操作。

場景說明

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

還是我們昨天使用過的工作表的樣式,我們今天嘗試通過其他的方式來獲取工作表某列的唯一值,我們來獲取性名列的唯一值,再之前我們學習了通過RemoveDuplicates和AdvancedFilter方法來實現,現在我們嘗試通過集合的方式來實現這樣的效果。

代碼區

Sub jihe()
On Error Resume Next
Dim ExcelSet As New Collection
For i = 2 To 23
ExcelSet.Add Cells(i, 1), Cells(i, 1).Text
Next i
For i = 1 To ExcelSet.Count
Cells(i + 1, 5) = ExcelSet.Item(i)
Next
End Sub

代碼依然是非常的簡短,代碼解析的時候,我們會詳細講解下Excel集合的用法,這裡我們來看看效果如何

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

通過上面的動圖和最終的篩選之後的結果來進行對比,證明我們的數據結果是沒有任何的問題的。

代碼解析

來看看今天的代碼是如何實現的,我們這裡要學習一個集合的概念,在Excel中也有一個集合的概念,就是Collection

但是他並不能夠直接使用,我們需要現聲明,這個和大家熟悉的字典之類的是一樣的方式

Dim ExcelSet As New Collection

這就是申明的方式,非常的簡單

然後我們就可以效仿字典的方式,通過循環的結構往集合中添加數據,和字典一樣,集合的值也只能存在唯一一個

所以在最開始我們需要先進行錯誤處理

On Error Resume Next

如果添加了相同的值,那麼肯定會報錯的,所以要忽略錯誤內容,跳過繼續添加下面的數據,最終一個循環結束之後,我們就得到了整個集合

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

如果你允許展開的話,你會發現對應的每一個item的值就是某一個姓名,比方說我們展開item5

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

得到了整個集合之後呢,我們就可以將集合的內容遍歷輸出,得到我們想要的結果了。

輸出的時候我們這裡採用循環遍歷的方式,為什麼不想字典一樣採用直接得到item的全部,一次性輸出呢?

因為集合並不存在這樣的概念。

"

前景提要(文末提供源碼下載)

相信現在很多的小夥伴們都有接觸過Python,在學習Python的時候,我們都學到了列表和集合,Python中的集合有一個特性,就是數據不重複,有點類似Excel中的字典,那麼Excel中是否存在這樣的一個集合的概念呢?

其實Excel VBA中也是有這樣的一個概念的,應該也是叫做集合,在集合中的數據必須保證唯一,那麼我們也可以利用集合的這個特性來獲取數據的唯一值,來看看如何操作。

場景說明

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

還是我們昨天使用過的工作表的樣式,我們今天嘗試通過其他的方式來獲取工作表某列的唯一值,我們來獲取性名列的唯一值,再之前我們學習了通過RemoveDuplicates和AdvancedFilter方法來實現,現在我們嘗試通過集合的方式來實現這樣的效果。

代碼區

Sub jihe()
On Error Resume Next
Dim ExcelSet As New Collection
For i = 2 To 23
ExcelSet.Add Cells(i, 1), Cells(i, 1).Text
Next i
For i = 1 To ExcelSet.Count
Cells(i + 1, 5) = ExcelSet.Item(i)
Next
End Sub

代碼依然是非常的簡短,代碼解析的時候,我們會詳細講解下Excel集合的用法,這裡我們來看看效果如何

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

通過上面的動圖和最終的篩選之後的結果來進行對比,證明我們的數據結果是沒有任何的問題的。

代碼解析

來看看今天的代碼是如何實現的,我們這裡要學習一個集合的概念,在Excel中也有一個集合的概念,就是Collection

但是他並不能夠直接使用,我們需要現聲明,這個和大家熟悉的字典之類的是一樣的方式

Dim ExcelSet As New Collection

這就是申明的方式,非常的簡單

然後我們就可以效仿字典的方式,通過循環的結構往集合中添加數據,和字典一樣,集合的值也只能存在唯一一個

所以在最開始我們需要先進行錯誤處理

On Error Resume Next

如果添加了相同的值,那麼肯定會報錯的,所以要忽略錯誤內容,跳過繼續添加下面的數據,最終一個循環結束之後,我們就得到了整個集合

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

如果你允許展開的話,你會發現對應的每一個item的值就是某一個姓名,比方說我們展開item5

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

得到了整個集合之後呢,我們就可以將集合的內容遍歷輸出,得到我們想要的結果了。

輸出的時候我們這裡採用循環遍歷的方式,為什麼不想字典一樣採用直接得到item的全部,一次性輸出呢?

因為集合並不存在這樣的概念。

Excel VBA 8.4 Python中有集合直接獲取唯一值,那Exce中可以嗎?

所以這也是集合的知名度低於字典的原因吧,要想輸出結果,只能通過遍歷循環的方式來實現。

================================

本節課的案例源碼已經上傳,需要的小夥伴請按照如下步驟操作,一個不能少哦~~

1.轉發下本文章(算是對我的小小支持吧~)

2.後臺私信“8-4”

希望大家多支持~~,多多關注 ~ ~

好了,明晚19:00,準時再見!

"

相關推薦

推薦中...