Immettere il numero n. Da due colonne e i numeri tra una terza colonna


2

Attualmente, sto avendo una struttura di tabella come di seguito: inserisci qui la descrizione dell'immagine

Ho provato a selezionare due colonne con la serie e trascinandola verso il basso per il riempimento automatico, ma non sembrava funzionare. Ho bisogno di qualcosa come sotto. C'è un modo per farlo con Excel, Fogli Google o qualcosa del genere?

inserisci qui la descrizione dell'immagine

Risposte:


2

Se hai una versione recente di Excel, in E2 inserisci la formula dell'array :

=TEXTJOIN(",",TRUE,ROW(INDIRECT(C2 & ":" & D2)))

e copia giù:

inserisci qui la descrizione dell'immagine

Le formule di matrice devono essere immesse con Ctrl+ Shift+ Enteranziché solo con la Enterchiave.

In caso contrario, immettere la seguente funzione definita dall'utente in un modulo standard:

Public Function CSList(n1 As Long, n2 As Long) As String
    Dim i As Long
    For i = n1 To n2
        CSList = CSList & "," & i
    Next i
    CSList = Mid(CSList, 2)
End Function

Quindi in E2 inserisci:

=CSList(C2,D2)

e copia giù:

inserisci qui la descrizione dell'immagine

Le funzioni definite dall'utente (UDF) sono molto facili da installare e utilizzare:

  1. ALT-F11 visualizza la finestra VBE
  2. ALT-I ALT-M apre un nuovo modulo
  3. incollare il materiale e chiudere la finestra VBE

Se si salva la cartella di lavoro, l'UDF verrà salvato con essa. Se si utilizza una versione di Excel successiva al 2003, è necessario salvare il file come .xlsm anziché .xlsx

Per rimuovere l'UDF:

  1. visualizza la finestra VBE come sopra
  2. cancella il codice
  3. chiudere la finestra VBE

Per utilizzare l'UDF da Excel:

=CSList(A1,B1)

Per ulteriori informazioni sulle macro in generale, vedere:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

e

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

e per le specifiche sugli UDF, vedere:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

Le macro devono essere abilitate affinché funzioni!


0

Sebbene la soluzione di cui sopra abbia funzionato per me utilizzando Excel, in seguito sono stato in grado di risolverlo in Fogli Google. Sto aggiungendo questa risposta qui per coloro che potrebbero non avere accesso a Ms Excel.

passi:

  1. Vai al menu "Strumenti" e fai clic su "Editor di script ..."
  2. Nel file di codice aperto incolla il codice indicato di seguito e salva.

    function range2series(input) {
    
      try {
    
         var r = input.split("-");
         var exist = r[1];
    
         //get the start and stop value
         var start = r[0];
         var last  = r[1];
         var current = start;
         var output = "";
    
         while (current <= last) {
           output += current;     
           output += ",";
           current++;                     
         }  
    
         //remove the last comma.
          output = output.substring(0, output.length - 1);
          return output;
    
        } catch(err) {
           //if single value and not range send back the input.
           return input; 
        }  
    
    
    
    }
    

Ora puoi utilizzare la funzione con i fogli di Google. Basta fare clic su una colonna e digitare =range2series(CELL), ad esempio range2series(D4).

Per maggiori dettagli, consultare .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.