亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

對于在vba中的strcomp函數的幾點疑問?求解答~

對于在vba中的strcomp函數的幾點疑問?求解答~

strcomp語句需要設置比較參數:(excel 幫助里說)vbUseCompareOption -1 使用Option Compare語句設置執行一個比較。vbBinaryCompare 0 執行一個二進制比較。vbTextCompare 1 執行一個按照原文的比較。vbDatabaseCompare 2 僅適用于Microsoft Access,執行一個基于數據庫信息的比較。例如 str1=Hello,str2=Hellohello1、那么strcomp(str1,str2,vbusecompareoption)這個會返回什么值?vbusecompareoption 這個參數執行什么比較?2、strcomp(str1,str2,vbbinarycompare) 這個會返回什么值?二進制比較的是逐字比較還是只比較首字母?3、strcomp(str1,str2,vbtextcompare)這個會返回什么值?以上疑惑請大師幫忙解答,不勝感激二進制代碼比較是遵循什么規則???
查看完整描述

2 回答

?
四季花海

TA貢獻1811條經驗 獲得超5個贊

一、vbusecompareoption 是參數的名稱,它有三個值,分別是
vbBinaryCompare 0 執行一個二進制比較。
vbTextCompare 1 執行一個按照原文的比較。
vbDatabaseCompare 2 僅適用于Microsoft Access,執行一個基于數據庫信息的比較。
注意,vbusecompareoption 本身不是參數值?。?!
所以,你的strcomp(str1,str2,vbusecompareoption)這個會返回”錯誤”。因為參數“vbusecompareoption”對VBA來說,是一個未定義的參數。
二、strcomp(str1,str2,vbbinarycompare)返回 -1
二進制比較的是按二進制字節進行比較。
三、strcomp(str1,str2,vbtextcompare)返回 -1
二進制代碼比較遵循 "0111010101010101010110000000000011"的規則

查看完整回答
反對 回復 2022-04-06
?
慕田峪9158850

TA貢獻1794條經驗 獲得超8個贊

vbUseCompareOption是根據模塊頭的Option Compare語句來確定比較的。
當是Option Compare Text 時,則是 vbTextCompare比較,當是Option Compare Binary時,則是 vbBinaryCompare 比較,如果模塊中沒有 Option Compare 語句,則缺省的文本比較方法是 Binary。
比較規則和字符串長度無關,如果第一個字符不同,則只比較第一個字符,如果相同,接著再比較第二個字符,直到碰到第一個不同的字符,后面的字符就忽略了。

查看完整回答
反對 回復 2022-04-06
  • 2 回答
  • 0 關注
  • 307 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號