Macro excel

di il
11 risposte

Macro excel

Buongiorno a tutti,
ho fatto un semplicissimo foglio di calcolo per una statistica per l'azienda per cui lavoro sul personale assente/presente/smart working ecc..
Ora il mio datore mi chiede di fare un pulsante che copi l'ultima riga e generi la successiva(copiando tutte le formule), cambiando la data (ovviamente quella successiva) ma che non vada oltre la data odierna; e via dicendo.
Ho creato la macro che incrementa le righe e la data di conseguenza, ma non ho la più pallida idea di come fermare la macro quando si raggiunge la data odierna.

Di seguito il codice della macro:

Sub inserisci_data()

Sheets("Analisi").Activate

Set SourceRange = Range(Range("k10").End(xlDown).Offset(0, -2), Range("k10").End(xlDown).Offset(0, 122))
Set fillRange = Range(Range("k10").End(xlDown).Offset(0, -2), Range("k10").End(xlDown).Offset(1, 122))
SourceRange.AutoFill Destination:=fillRange

End Sub

Potete aiutarmi per favore?

Grazie in anticipo sperando di esservi utile e ricambiare il favore!

11 Risposte

  • Re: Macro excel

    Puoi allegare un file di esempio ?
  • Re: Macro excel

    Eh ma non mi fa allegare il file
  • Re: Macro excel

    Caricalo su drive, dropbox o simili e posta il link
  • Re: Macro excel

    Eccovi,
    https://drive.google.com/drive/u/0/folders/1-VPFvzmUBkwfPkmRFDtR0Rrt9XFqLalD

    Grazie in anticipo
  • Re: Macro excel

    È protetto, devi dare l'accesso a chiunque abbia il link
  • Re: Macro excel

    Https://drive.google.com/file/d/1znXzRsPGGy_HZ9XzdK_TCk9V_GIe6hyF/view?usp=sharing
  • Re: Macro excel

    C'è un motivo per cui calcoli il range tutto riferito a K10 con gli offset ? non sarebbe più semplice e intuitivo determinare l'ultima riga utile ed utilizzare le colonne I e EC ?
  • Re: Macro excel

    Ho provato ad impostare il range I - EC ma mi saltavano tutte le formule
  • Re: Macro excel

    Le formule mi danno solo errore, ma prova questa
    Sub inserisci_date()
    
    Sheets("Analisi").Activate
    LR = Cells(Rows.Count, "I").End(xlUp).Row
    mdata = Range("I" & LR).Value
    
    Do While mdata <= Date
      Set SourceRange = Range("I" & LR & ":EC" & LR)
      Set fillRange = Range("I" & LR & ":EC" & LR + 1)
      SourceRange.AutoFill Destination:=fillRange
      mdata = Range("I" & LR + 1).Value
      LR = LR + 1
    Loop
    End Sub
  • Re: Macro excel

    Meravigioso...Funziona!
    ti ringrazio tantissimo.
    Ho visto che hai inserito un ciclo...quindi gli hai detto copia righe fino a quando non trovi la data?

    Grazie ancora
  • Re: Macro excel

    Esatto
Devi accedere o registrarti per scrivere nel forum
11 risposte