當前位置:成語大全網 - 新華字典 - VBA裏面的字典是怎麽回事,有多大的用處呢?可以在什麽時候用?請高手解答壹下,謝謝!!111

VBA裏面的字典是怎麽回事,有多大的用處呢?可以在什麽時候用?請高手解答壹下,謝謝!!111

創建字典的兩個方法

1 引用 c:\windows\system32\scrrun.dll 然後 dim d as new Dictionary

2 Set d = CreateObject("Scripting.Dictionary")

字典的四個屬性

CompareMode 決定key的比較方法 BinaryCompare(默認方法) 二進制方式比較,即a,A是不同字符

TextCompare '文本方式比較,即a,A是相同字符

vbDatabaseCompare 僅用於 Microsoft Access。進行基於您自己數據庫中信息的比較。

如果用recordset做key的話vbDatabaseCompare方式就有用了,因為用的少沒有測試過

Count 計算字典中的條目數量 s = d.count s 是壹個long值

Key 也就是Item的代碼通常是整數或字符串,可以是除數組外的任何類型,在壹個字典中每壹個key都是唯壹的

壹般利用這個特點去除重復值

Item 可以是任何對象(不含自定義數據):數字,字符串,數組,對象(窗體,控件,文件。。。。)

字典的六個方法

Add 向字典添加內容 d.add "a",10000,或 d("王先生")= "010-87654321"

向字典添加對象 set d("mysheet") = Sheet1 Set d("mybook") = ThisWorkbook

註意 set 關鍵字

Exists 判斷keys中有沒有要找的key,返回 true 或 false

s = d.exists("王先生"), s 是 true 因為上面已經添加了王先生

Keys 學過英文吧?Key的復數形式,返回壹個壹維數組 arr= d.keys

Items 同上 arr = d.items

Remove 按照key從字典中刪除壹個項目 d.remove("王先生")

RemoveAll 清空字典 d.RemoveAll 此時 d.count 為 0字典簡單,好學又好用 總***10種屬性方法.

描述

在壹個 Dictionary 對象中設置壹個 key。

語法

object.Key(key) = newkey

Key 屬性具有下列部分:

部分 描述

object 必需的。總是壹個 Dictionary 對象的名字。

key 必需的。被更改的 Key值。

newkey 必需的。替換指定 key 的新值。

說明

如果在更改某個 key 時,沒有找到 key,則會出現運行時錯誤。

Item 屬性

描述

對 Dictionary 對象中指定的 Key,設置或返回壹個 Item 。對於集合來說,基於指定的 Key ,返回壹個 Item 。讀/寫屬性。

語法

object.Item(key) [= newitem]

Item 屬性具有下列部分:

部分 描述

object 必需的。總是壹個集合或 Dictionary 對象的名稱。

key 必需的。與被檢索或添加的條目相關聯的 Key 。

newitem 可選的。僅用於 Dictionary 對象;沒有用於集合的應用程序。如果提供的話,newitem 是與指定的 Key 相關聯的新值。

說明

如果在改變某個 item 時,沒有找到 key,則用指定的newitem創建壹個新的 key 。如果在試圖返回某個已存在條目時,沒有找到 key,則創建壹個新 key,且其相應的條目為空。

Count 屬性

描述

返回集合或 Dictionary 對象中的條目數。只讀。

語法

object.Count

object 總是“應用於”列表中某壹項的名稱。

說明

下面的代碼舉例說明了 Count 屬性的使用方法:

Dim a, d, i '創建壹些變量

Set d = CreateObject("Scripting.Dictionary")

d.Add "a", "Athens" '添加壹些關鍵字和條目。

d.Add "b", "Belgrade"

d.Add "c", "Cairo"

a = d.Keys '獲得關鍵字

For i = 0 To d.Count -1 '遍及數組

Print a(i) '打印關鍵字

Next

...

CompareMode 屬性

描述

設置或返回某個 Dictionary 對象中的比較字符串關鍵字的比較模式。

語法

object.CompareMode[ = compare]

CompareMode 屬性具有下列部分:

部分 描述

object 必需的。總是壹個 Dictionary 對象的名稱。

compare 可選的。如果提供的話,compare 是壹個代表比較模式的值,該比較模式用於象 StrComp 這樣的函數。

設置

compare 參數可以具有下列值:

常數 值 描述

VbUseCompareOption –1 使用 Option Compare 語句的設置值進行比較。

vbBinaryCompare 0 進行二進制比較。

vbTextCompare 1 進行文字比較。

vbDatabaseCompare 2 僅用於 Microsoft Access。進行基於您自己數據庫中信息的比較。

說明

如果試圖對已經包含數據的 Dictionary 對象的比較模式進行更改的話,就會出錯。

CompareMode 屬性所用的參數值與 StrComp 函數所用的 compare 參數相同。可以用大於 2 的值表示使用特定 Locale IDs (LCID) 的比較。