Vrnite vsak n-ti predmet z uporabo VBA v Microsoft Excelu

Anonim

Če se sprašujete, kako nekdo najde vsak n -ti element v stolpcu. V tem članku se bomo naučili, kako vrniti vsako n-to postavko s seznama. Za iskanje rezultata bomo uporabili kodo VBA.

Vprašanje: Želim, da koda makra izvleče vsako n -to vrednost iz stolpca. Poskušam potegniti vrednosti iz enega lista / stolpca v drug list / stolpec. Poskušal sem uporabiti številne funkcije, kot je OFFSET, vendar nisem mogel ugotoviti formule, ki bi lahko dala rezultat.

Vzemimo primer 100 vrednosti v stolpcu A in želimo izvedeti vsakih 10th vrednost v stolpcu B

Vzorčne vrednosti od celice A1 so enake 1 do celice A100 enake 100; naslednji je posnetek podatkov v stolpcu A:

Za dosego rezultata moramo slediti spodnjim korakom za zagon urejevalnika VB

  • Kliknite zavihek Razvijalec
  • V skupini Koda izberite Visual Basic

  • Kopirajte spodnjo kodo v standardni modul
 Funkcija INDEXN (InputRange As Range, N As Integer) As Variant 'vrne vsak N-ti element iz InputRange' --- Comment 'izberite želeno ciljno območje za funkcijo in' --- Comment 'vnesite kot funkcijo polja s Ctrl +Shift+Enter. ' --- Komentiraj Dim ItemList () kot variacijo, c kot obseg, i tako dolgo, iCount as dolgo i = 0 iCount = 0 ReDim ItemList (1 do InputRange.Cells.Count \ N) za vsak c v InputRange i = i + 1 Če je i Mod N = 0, potem iCount = iCount + 1 Napaka nadaljuje naslednji seznam elementov (iCount) = c. INDEXN = Application.WorksheetFunction.Transpose (INDEXN) End If Erase ItemList End Funkcija 

  • Da bi dobili vsak n -ti element v območju B1: B10, je formula naslednja
  • {= INDEXN ($ A $ 1: $ A $ 100, 10)}

Opomba: to je matrična formula; zato je treba tipki Ctrl + Shift + End pritisniti skupaj

  • Da bi dobili vsakih 7th vrednost iz območja A1: A100; zadnji argument bomo spremenili z 10 na 7 in formula bo
  • {= INDEKSN ($ A $ 1: $ A $ 100, 7)}

Na ta način lahko vrnemo vsak n-ti predmet z enega lista na glavni list.

  • Formula na drugem listu bo vsebovala sklice na liste
  • {= INDEXN (List1! $ A $ 1: $ A $ 100, 10)}

Zaključek: S pomočjo zgornje funkcije, ki jo določi uporabnik, imamo lahko prožnost pri iskanju vsakega n-og elementa z enega lista na drugega.

Če so vam bili naši blogi všeč, jih delite s prijatelji na Facebooku. Prav tako nas lahko spremljate na Twitterju in Facebooku. Radi bi slišali od vas, nam sporočite, kako lahko izboljšamo, dopolnimo ali inoviramo svoje delo in ga izboljšamo. Pišite nam na spletni strani elektronske pošte