Nel caso ti stia chiedendo come qualcuno possa trovare ogni ennesimo elemento in una colonna. In questo articolo impareremo come restituire ogni n-esimo articolo da un elenco. Useremo il codice VBA per trovare il risultato.
Domanda: Voglio un codice macro per estrarre ogni ennesimo valore da una colonna. Sto cercando di estrarre i valori da un foglio/colonna in un altro foglio/colonna. Ho provato a usare molte funzioni come OFFSET ma non sono riuscito a capire la formula che può dare il risultato.
Facciamo un esempio di 100 valori nella colonna A e vogliamo scoprirlo ogni 10ns valore nella colonna B
I valori di esempio a partire dalla cella A1 uguale a 1 fino alla cella A100 uguale a 100; di seguito è riportato lo snapshot dei dati nella colonna A:
Per ottenere risultati, dobbiamo seguire i passaggi seguenti per avviare l'editor VB
- Fare clic sulla scheda Sviluppatore
- Dal gruppo Codice, seleziona Visual Basic
- Copia il codice sottostante nel modulo standard
Funzione INDEXN(InputRange As Range, N As Integer) As Variant ' restituisce ogni N-esimo elemento da InputRange' --- Comment ' seleziona l'intervallo di destinazione desiderato per la funzione e' --- Comment ' entra come funzione array con Ctrl +Maiusc+Invio.' --- Comment Dim ItemList() As Variant, c As Range, i As Long, iCount As Long i = 0 iCount = 0 ReDim ItemList(1 To InputRange.Cells.Count \ N) Per ogni c In InputRange i = i + 1 If i Mod N = 0 Then iCount = iCount + 1 On Error Riprendi Next ItemList(iCount) = c.Value On Error GoTo 0 End If Next c INDEXN = ItemList If InputRange.Rows.Count >= InputRange.Columns.Count Then INDEXN = Application.WorksheetFunction.Transpose(INDEXN) End If Erase ItemList End Function
- Per ottenere ogni n elemento nell'intervallo B1: B10, la formula è
- {=INDICEN($A$1:$A$100, 10)}
Nota: questa è una formula di matrice; quindi, i tasti Ctrl + Maiusc + Fine devono essere premuti insieme
- Per ottenere ogni 7ns valore dall'intervallo A1:A100; cambieremo l'ultimo argomento da 10 a 7 e la formula sarà
- {=INDICEN($A$1:$A$100, 7)}
In questo modo, possiamo restituire ogni n-esimo articolo da un foglio al foglio principale.
- La formula in un altro foglio conterrà il riferimento del foglio
- {=INDEXN(Foglio1!$A$1:$A$100, 10)}
Conclusione: Con l'aiuto della precedente funzione definita dall'utente, possiamo avere la flessibilità di scoprire ogni ennesimo elemento da un foglio all'altro.
Se ti è piaciuto il nostro blog, condividilo con i tuoi amici su Facebook. E puoi anche seguirci su Twitter e Facebook. Ci piacerebbe avere tue notizie, facci sapere come possiamo migliorare, completare o innovare il nostro lavoro e renderlo migliore per te. Scrivici al sito di posta elettronica