標題:
[發問]
字典不重覆請益?
[打印本頁]
作者:
joey0415
時間:
2014-9-19 13:24
標題:
字典不重覆請益?
本帖最後由 joey0415 於 2014-9-19 13:25 編輯
圖上兩種寫法都可以不重覆
這一段看得懂
If Not d.Exists(Cells(i, 1).Value) Then
d.Add Cells(i, 1).Value, Range(Cells(i, 1), Cells(i, 4))
End If
而這一段為什麼也可以呢?知道的請幫忙解釋一下!謝謝
Set d(Cells(i, 1).Value) = Range(Cells(i, 1), Cells(i, 4))
[attach]19184[/attach]
[attach]19185[/attach]
作者:
Hsieh
時間:
2014-9-19 16:01
回復
1#
joey0415
DICTIONARY物件的ADD方法,若出現關鍵字重複時,則會發生add方法錯誤,所以必須使用Exists方法先測試關鍵字是否已經存在
以你的語法是要做A欄的不重覆來抓取內容
兩段方法皆可做到,但是結果卻不一樣
使用Exists方法,則該關鍵字第一次出現位置就被存入該關鍵字內容
而第二種方式用關鍵字對應寫入內容
則最後結果,會以關鍵字最後出現位置為對應內容
[attach]19186[/attach]
以上圖為例第一種使用Exists方法的語法
A欄不重複有2、3、4、5
分別對應2→A、3→E、4→B、5→F
用第二種直接給值的方式對應結果為
2→J、3→E、4→I、5→G
作者:
joey0415
時間:
2014-9-19 20:28
回復
2#
Hsieh
感謝版主,會再研究,如果不懂再請教版主
感謝回答
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)