Macro ripetizione id



  • Macro ripetizione id
    di Marco (utente non iscritto) data: 07/11/2017 16:08:40

    Un saluto a tutti,
    chiedo se sia possibile avere un aiuto per una funzione macro che devo sviluppare: avrei la necessità di far ripetere dei numeri id per 16 volte consecutivi e poi passare oltre, non sono molto bravo farò un esempio alla mia portata tipo:1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1 poi 2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2 ecc ecc per un numero infinito di id avevo un piccolo script funzionante che mi creava 16 celle ma ora non funziona più e non riesco più a vederlo aprendo la macro spero possiate aiutarmi grazie mille Marco De Angelis



  • di Luca73 data: 07/11/2017 16:59:31

    Come li vuoi i dati?
    in riga, in colonna, in una cella?
    Inoltre la definizione di "per un numero infinito di id" non va bene. avrai un inizio ed una fine. il numero di righe e di colonne sono "Finiti"

    I numeri cominciano da 1 e vanno avanti?

    Dacci un po' di informazioni in più.
    L'ottimo sarebbe avere un esempio di ciò che vuoi compilato a mano (anche parzialmente)






  • di Marco (utente non iscritto) data: 07/11/2017 17:53:02

    Ho provato ad allegare un file che rende l'idea spero ci sia riuscito grazie per l'aiuto



  • di Luca73 data: 08/11/2017 08:47:42

    Ciao Marco

    1) un file si intende un file excel non una immagine.
    2) rispondi anche alle altre domande Grazie

    Ciao
    Luca





  • di Marco (utente non iscritto) data: 08/11/2017 17:36:41

    Ok ho inserito il file excel
    Grazie ancora per la pazienza

    Si gli id devono essere consecutivi ma non necessariamente iniziare da 1 anzi sarebbe meglio fosse un campo libero che possa impostare
    in effetti con il vecchio script non generava più id per mancanza di spazio e mi dava errore



  • di patel data: 08/11/2017 17:54:24

    metti in I1 l'indice iniziale e in I2 quello finale
     
    Sub a()
    inizio = Range("I1")
    fine = Range("I2")
    r = 1
    For ID = inizio To fine
      For i = 1 To 16
         Cells(r, "A") = ID
         r = r + 1
      Next
    Next
    End Sub






  • di Marco De Angelis (utente non iscritto) data: 09/11/2017 08:50:33

    Buongiorno ho inserito il codice e creato una Macro ma ricevo errore di "run-time 1004 metodo dell'oggetto global non riuscito "

    Forse ho errato in qualcosa?

    Grazie e scusami ancora


     
    Sub a()
    inizio = Range("65000")
    fine = Range("80000")
    r = 1
    For ID = inizio To fine
      For i = 1 To 16
         Cells(r, "A") = ID
         r = r + 1
      Next
    Next
    End Sub



  • di patel data: 09/11/2017 08:54:13

    Se osservi con attenzione l'istruzione range indica l'indirizzo della cella, quindi deve contenere una lettere ed un numero.
    metti in I1 significa metti nella cella I1





  • di Marco De Angelis (utente non iscritto) data: 09/11/2017 09:06:35

    Sicuramente sono io che ho dei limiti perché non conosco minimamente questa programmazione ti chiedo di essere gentile ancora per un attimo io inerisco come da codice ma il risultato sono solo i primi 16 0 e non altro scusa mi farò perdonare per la mia ignoranza
     
    Sub a()
    inizio = Range("I65000")
    fine = Range("I80000")
    r = 1
    For ID = inizio To fine
      For i = 1 To 16
         Cells(r, "A") = ID
         r = r + 1
      Next
    Next
    End Sub



  • di patel data: 09/11/2017 09:49:31

    non devi modificare la macro, devi mettere il numero di di inizio nella cella I1 e quello di fine nella cella I2 come ti ho già detto "metti in I1 significa metti nella cella I1 "





  • di Marco De Angelis (utente non iscritto) data: 09/11/2017 09:53:05

    Dio io ti Amo.... faccio subito il mio dovere ti ringrazio infinitamente