vb計算某一陣列元素對應的值是多少

2022-03-07 18:51:42 字數 3398 閱讀 7513

1樓:匿名使用者

array(arglist)

所需的 arglist 引數是一個用逗號隔開的值表,這些值用於給 variant 所包含的陣列的各元素賦值。如果不提供引數,則建立一個長度為 0 的陣列。

說明用來表示陣列元素的符號由變數名、圓括號以及括號中的所需元素的索引號組成。在下面的示例中,第一條語句建立一個 variant 的變數 a。第二條語句將一個陣列賦給變數 a。

最後一條語句將該陣列的第二個元素的值賦給另一個變數。

dim a as variant

a = array(10,20,30)

b = a(2)

使用 array 函式建立的陣列的下界受 option base 語句指定的下界的決定, 除非 array 是由型別庫(例如 vba.array )名稱限定。如果是由型別庫名稱限定,則 array 不受 option base 的影響。

注意 沒有作為陣列宣告的 variant 也可以表示陣列。除了長度固定的字串以及使用者定義型別之外,variant 變數可以表示任何型別的陣列。儘管一個包含陣列的 variant 和一個元素為 variant 型別的陣列在概念上有所不同,但對陣列元素的訪問方式是相同的。

2樓:匿名使用者

但是樓主的問題有漏洞,如果一個陣列中有一些值相同,那麼返回的下標就不止一個。

pxnlxx 的答案是返回的第一個。

vb中計算任意一位陣列元素個數的公式是

3樓:匿名使用者

對於一維陣列a

元素個數為 ubound(a)-lbound(a)+1

4樓:想請教你們哈

例如:private sub command1_click()dim a(5) as integer

debug.print lbound(a), ubound(a)end sub

vb 怎樣求陣列元素個數

5樓:四舍**入

以語句dim a(3 ,-2 to 2 ,5)為例:

option base 1

private sub form_click()

dim i as integer, j as integer, k as integer

dim count as long

dim a(3, -2 to 2, 5) as integer

for i = lbound(a, 1) to ubound(a, 1)

for j = lbound(a, 2) to ubound(a, 2)

for k = lbound(a, 3) to ubound(a, 3)

count = count + 1

next k

next j

next i

msgbox count

end sub

擴充套件資料:

vb常用函式:

len(x)求字串的長度(字元個數)

lenb(x)求字串的位元組個數

mid(x,n1,n2)從x字串左邊第n1個位置開始向右取n2個字元

left(x,n)從x字串左邊開始取n個字元

right(x,n)從x字串右邊開始取n個字元

string(n,x)返回由n個首字元組成的字串

space(n)返回n個空格

now返回系統日期和時間

year(c)返回指定日期的年份

minute()返回指定時間的分數

chr(x)將數值(ascii碼)轉換為字元

cbool(x)將數字字串或數值轉換成布林型

6樓:

dim a(1 to 6, 6) as string定義的陣列包含的元素個數是42

dim a(6, 6) as integer定義的陣列包含的元素個數是49,二維陣列,長寬都是是7

dim b(10 to 20) 定義的陣列元素個數是11,ubound(陣列名)-lbound(陣列名)+1,20-10+1=11

a10(5)相當於在一維陣列的5個點

b (3,4)相當於在二維陣列裡的12個點(x軸上三個點,y軸上四個點)

c (1 to 5,2 to 4, 3 to 6)相當於在三維陣列裡的60個點(5×3×4)

dim a10(5):一維陣列,限5;整型

dim b(3,4):二維,限3,4;整型

dim c(1 to 5,2 to 4,3 to 6):三維,限5,3,4

7樓:來自妙峰山名嬡美姝的白玉

ubound(陣列名)-lbound(陣列名)+1

vb6 判斷輸入的數字是否為陣列中的某個元素值

8樓:匿名使用者

先判斷輸入是否為數字:

text1=trim(text1) '去除空格if isnumeric(text1)=false then exit sub '不是數字結束

然後與陣列的所有值比較,看是否相同即可。

'sz 陣列名稱

for i= 0 to ubound(sz) '迴圈所有陣列if sz(i)=cstr(text1) then '比較是否相同msgbox "陣列中有相同值" & text1 '相同提示end if

next '未結束繼續

9樓:匿名使用者

temp = split(a, "" & vbcrlf) '變數=split(變數,""&回車vbcrlf)

ok = text1.text

for i = 0 to ubound(temp)print temp(i)

ifc temp(i)=cstr(ok) then msgbox ""

next

vb中如何獲得陣列元素中個數

10樓:慶年工坊

sub s(arr())

msgbox ubound(arr)-lbound(arr)+1

end sub

11樓:匿名使用者

你要取的實際值吧?

你已經定義a(10) 那他所有元素就是10個。 你要判斷其他是否空值 就用迴圈判斷

s=0for i=0 to 9

if a(i)<>"" then s=s+1next

print "陣列共有有效元素:";s

12樓:匿名使用者

ubound(a) - lbound(a) + 1

13樓:天枰萬能

dim arr(2)

dim length = ubound(arr) - lbound(arr) + 1

vb程式設計定義包含元素的陣列a,為其陣列元素分別賦值為 20,並將其輸出

private sub command1 click dim a 10 as integer for i 1 to 10 a i 2 i print a i next i end sub vb程式設計宣告一個有10個元素的一維陣列a使用inputbox函式為所有元素賦值,將其最小元素的值及下標顯示出...

求一vb程式設計,編寫陣列,將資料系列最後元素移動到位置,其餘元素依次後移

把最後一個放到一個臨時變數,然後運用迴圈將倒數第二個賦給倒數第一個,倒數第三個賦給倒數第二個,最後把臨時變數賦給第一個元素。如果要我給出原始碼來就沒意思了。private sub form load 建立一個陣列 dim a 9 as integer 初始化陣列 dim i as integer f...

vb使用動態陣列,一定要Redim麼

private subform click dima i redim a 9 在這裡加上這一句 fori 0to9 a i i next iredim preserve a 10 a 10 10 fori 0 to10 print a i next iendsub 不用也可以,你可以開始時設大一點,...