Lope ma VBA

Aia kekahi mau manawa i makemake ʻia kahi papahana VBA e hana i nā hana like i nā manawa he nui i ka lālani (ʻo ia hoʻi, e hana hou i ka poloka o ke code i nā manawa he nui). Hiki ke hana i kēia me ka hoʻohana ʻana i nā loops VBA.

Loaʻa nā loops VBA:

Ma hope aʻe, e nānā pono kākou i kēlā me kēia mau pōʻai.

No ka Loop Operator ma Visual Basic

ʻO ke ʻano o ka mea hoʻohana loop ka ma Visual Basic hiki ke hoʻonohonoho ʻia i hoʻokahi o nā ʻano ʻelua: ma ke ʻano he loop No… Aʻe a i ʻole ma ke ʻano he loop Mahalo.

Kaapuni “No… Aʻe”

ʻO ke'ōpiopio No… Aʻe hoʻohana i kahi ʻano hoʻololi e lawe i nā waiwai mai kahi ākea i hāʻawi ʻia. Me kēlā me kēia hoʻololi o ka waiwai o ka mea hoʻololi, hana ʻia nā hana i hoʻopaʻa ʻia i loko o ke kino o ka pōʻai. He mea maʻalahi kēia mai kahi laʻana maʻalahi:

No ka i = 1 a 10 Huina = Huina + iArray(i) Aʻe i

I kēia loop maʻalahi No… Aʻe hoʻohana ʻia ka hoʻololi i, ka mea e lawe i ka helu 1, 2, 3, … 10, a no kēlā me kēia o kēia mau waiwai, ua hoʻokō ʻia ka code VBA i loko o ka loop. No laila, hoʻopili kēia loop i nā mea o ka array. iArray ma ka hoololi Ka huina.

Ma ka laʻana i luna, ʻaʻole i kuhikuhi ʻia ka hoʻonui loop, no laila e hoʻonui i ka loli i mai ka 1 a hiki i ka 10, he hoʻonui ka paʻamau 1… Eia nō naʻe, i kekahi mau mea pono e hoʻohana i nā waiwai hoʻonui like ʻole no ka loop. Hiki ke hana i kēia me ka hoʻohana ʻana i ka huaʻōlelo 'anuʻue like me ka hōʻike ʻana ma ka laʻana maʻalahi.

No ka d = 0 a i ka 10 ʻanuʻu 0.1 dTotal = dTotal + d Next d

No ka mea ma ka laʻana i luna, ua hoʻonohonoho ʻia ka ʻanuʻu hoʻonui e like me 0.1, a laila ka loli dKa huina no kēlā me kēia hana hou ʻana o ka pōʻai i nā waiwai 0.0, 0.1, 0.2, 0.3,… 9.9, 10.0.

No ka hoʻoholo ʻana i ka ʻanuʻu loop ma VBA, hiki iā ʻoe ke hoʻohana i kahi waiwai maikaʻi ʻole, no ka laʻana, e like me kēia:

No ka i = 10 i ka 1 ʻanuʻu -1 iArray(i) = i Next i

Eia ka hoʻonui -1, pela ka hoololi i me kēlā me kēia hana hou ʻana o ka pōʻai i nā waiwai 10, 9, 8, ... 1.

Loop "No kēlā me kēia"

ʻO ke'ōpiopio Mahalo like me ka pōʻaiapuni No… Aʻe, akā ma kahi o ka hoʻololi ʻana ma luna o ke kaʻina o nā waiwai no ka hoʻololi counter, ka loop Mahalo hana i kahi hoʻonohonoho o nā hana no kēlā me kēia mea i loko o ka pūʻulu o nā mea i kuhikuhi ʻia. Ma ka laʻana aʻe, e hoʻohana ana i kahi loop Mahalo e helu ana i nā pepa a pau i ka puke hana Excel o kēia manawa:

E hoʻokaʻawale i ka wSheet ma ke ʻano he pepa haʻawina no kēlā me kēia wSheet ma ka pepa hana MsgBox "Ka inoa inoa ʻole: " & wSheet.Name Next wSheet

ʻO ka huaʻōlelo hoʻopaʻa haʻihaʻi "puka no"

Aʻole Puka No hoʻohana ʻia e hoʻopau i ka pōʻaiapuni. Ke loaʻa koke kēia ʻōlelo i ke code, hoʻopau ka papahana i ka hoʻokō ʻana i ka loop a hele i ka hoʻokō ʻana i nā ʻōlelo i loko o ke code ma hope koke o kēia loop. Hiki ke hoʻohana ʻia kēia, no ka laʻana, e ʻimi i kahi waiwai kikoʻī i loko o kahi ʻano. No ka hana ʻana i kēia, me ka hoʻohana ʻana i kahi loop, nānā ʻia kēlā me kēia ʻāpana o ka array. Ke loaʻa koke ka mea i koi ʻia, ʻaʻohe pono e nānā i ke koena - ua hoʻopau ʻia ka pōʻai.

Palapala hoʻohana Puka No hōʻike ʻia ma ka laʻana. Maʻaneʻi ke hoʻololi nei ka loop ma luna o 100 array entry a hoʻohālikelike i kēlā me kēia me ka waiwai o ka loli dVal… Inā loaʻa kahi pāʻani, hoʻopau ʻia ka loop:

No ka i = 1 a i ka 100 Ina dValues(i) = dVal A laila IndexVal = i Ha'alele no ka hopena inā a'e i

ʻO ka Do While Loop ma Visual Basic

ʻO ke'ōpiopio Hana i ka wā hoʻokō i kahi poloka o ke code inā lōʻihi ke kūlana i ʻōlelo ʻia. Eia kekahi laʻana o kahi kaʻina hana iiaciiie, kahi e hoʻohana ai i ka loop Hana i ka wā Hōʻike ʻia nā helu Fibonacci ʻaʻole ma mua o 1000:

'O ke ka'ina hana e ho'opuka i nā helu Fibonacci 'a'ole i'oi aku ma mua o 1000 Sub Fibonacci() Dim i As Integer 'counter e hō'ike i ke kūlana o ka mea i loko o ke ka'ina Dim iFib E like me ka Integer 'waiwai i kēia manawa o ke ka'ina. o ke kaʻina Dim iStep E like me ka Integer 'hale kūʻai nui o ka hoʻonui aʻe' hoʻomaka i nā mea hoʻololi i a me iFib_Next i = 1 iFib_Next = 0 'Do ʻOiai e hoʻokō ʻia ka loop a hiki i ka nui o ka helu Fibonacci o kēia manawa ma mua o 1000 Do ʻOiai iFib_Next <1000 Inā i = 1 A laila 'kahi hihia kūikawā no ka mea mua iStep = 1 iFib = 0 'ē aʻe 'e mālama i ka nui o ka hoʻonui hou aʻe ma mua o ke kākau ʻana i ka waiwai o kēia manawa iStep = iFib iFib = iFib_Next End Inā 'pai i ka helu Fibonacci o kēia manawa ma ke kolamu A o 'o ka pepa hana 'eleu 'i ka lālani me ka hua'ōlelo i nā Pūnaewele(i, 1). Waiwai = iFib 'heluhelu i ka helu Fibonacci aʻe a hoʻonui i ka papa kuhikuhi kūlana element e 1 iFib_Next = iFib + iStep i = i + 1 Loop End Sub

Ma ka laʻana i hāʻawi ʻia, ke kūlana iFib_Next < 1000 nānā ʻia ma ka hoʻomaka o ka loop. No laila, inā ka waiwai mua iFib_Next Inā ʻoi aku ma mua o 1000, ʻaʻole e hoʻokō ʻia ka loop.

ʻO kekahi ala e hoʻokō ai i kahi loop Hana i ka wā - kau i ke kūlana ʻaʻole ma ka hoʻomaka, akā ma ka hopena o ka loop. I kēia hihia, e hoʻokō ʻia ka loop ma ka liʻiliʻi hoʻokahi, me ka ʻole o ka hoʻokō ʻana i ke kūlana.

Schematically, kēlā pōʻaiapuni Hana i ka wā me ke kūlana e nānā ʻia ma ka hopena e like me kēia:

Hana ... Loop ʻOiai iFib_Next < 1000

Цикл "E hana a hiki" ma Visual Basic

ʻO ke'ōpiopio Hana Ahiki like loa me ka pōʻaiapuni Hana i ka wā: ka poloka o ke code i loko o ke kino o ka loop e hoʻokō ʻia a hiki i ka manawa i ʻike ʻia ai (ʻo ka hopena o ka ʻōlelo kūlana. oiaio). Ma ke kaʻina hana aʻe iiaciiie me ka hoʻohana ʻana i ka pōʻaiapuni Hana Ahiki e kiʻi i nā waiwai mai nā cell āpau i kahi kolamu A pepa haʻawina a hiki i ke kolamu e hālāwai ai me kahi keena hakahaka:

iRow = 1 Hana a hiki i ka IsEmpty(Cells(iRow, 1)) 'Ua mālama ʻia ka waiwai o ke kelepona i kēia manawa ma ka laʻana dCellValues ​​​​dCellValues(iRow) = Nā Pūnaewele(iRow, 1). Waiwai iRow = iRow + 1 Loop

Ma ka laʻana ma luna, ke kūlana IsEmpty(Nā Pūnaewele(iRow, 1)) aia ma ka hoʻomaka o ka hale Hana Ahiki, no laila e hoʻokō ʻia ka loop ma ka liʻiliʻi hoʻokahi inā ʻaʻole nele ka cell mua i lawe ʻia.

Eia naʻe, e like me ka mea i hōʻike ʻia ma nā hiʻohiʻona loop Hana i ka wā, i kekahi mau mea pono e hoʻokō ʻia ka loop ma ka liʻiliʻi loa, me ka nānā ʻole i ka hopena mua o ka ʻōlelo kūlana. I kēia hihia, pono ke kau ʻia ka ʻōlelo kūlana ma ka hope o ka loop, e like me kēia:

Hana ... Loop a hiki i ka hemo(Cells(iRow, 1))

Waiho i ka Reply