Regressioni con VBA

  • Regressioni con vba di Bertoz
    Salve sono un principiante col vba.
    sto facendo un lavoro con excel in cui devo fare più di 100 regressioni, sapete consigliarmi come fare a programmare il vba in modo che non debba farle tutte manualmente una per una?
    vi ringrazio
    saluti

    Regressioni con vba di Bertoz
    Salve sono un principiante col vba.
    sto facendo un lavoro con excel in cui devo fare più di 100 regressioni, sapete consigliarmi come fare a programmare il vba in modo che non debba farle tutte manualmente una per una?
    vi ringrazio
    saluti

    di Enzo
    Volentieri se sapessi cosa sono le regressioni
    se invii un file di prova e tramite lo scambiofiles magari essendo un pochino piu' preciso
    grazie

    Utilizzare vba con excel di Beppe
    Salve a tutti!
    vorrei imparare a utilizzare il vba per excel ma non so da dove iniziare, avete dei consigli da darmi per poter iniziare a utilizzar le funzionalità base..
    grazie a tutti

    di Enzo
    Inizialmente rispondi nel forum alle domande che ti vengono poste.
    comunque in alto a destra nel forum trovi il corso base dal quale partire per iniziare a muoverti nel mondo vba
    ciao

    di Enzo
    Scusa ma mi sono accorto che non sei la persona che ha posto la domanda iniziale quindi scusa per la mia intrusione.
    rimane il fatto del corso base nel forum
    p.s. se devi rispondere ad una domanda posta in precedenza va bene come ti sei comportato ma se la discussione da aprire e' nuova devia cliccare su nuova discussione

    Regressioni con vba di Ricky53
    Dovresti fornire più informazioni:
    quanti dati per le "y" e le "x" utilizzi per ogni regressione; la regressione è linere o logaritmica; i dati sono già in tabella in un foglio excel?
    forse, come ha già detto enzo, conviene che invi un file tramite la sezione "scambio files".

    manda le informazioni e sicuramente trovi la risposta.
    ciao ricky53

    di Bertoz
    La regressione è lineare e i dati che utlizzo sono in foglio excel cmq adesso provo a scambiare il file

    di Bertoz
    Mi dice che non è possibile l'upload cosa significa?
    scusatemi la mia ignoranza

    Regressioni con vba di Ricky53
    Devi operare così:
    1. click su "sfoglia"
    2. individuare il file da allegare che si trova sul tuo pc
    3. "apri" o opzione simile (dipende dal sistema operativo
    4. selezionare invia

    e dovresti riuscire ad inviare il file.
    ti ho inviato il file regressioni_bertoz.xls e una semplice regressione linere con grafico.

    attenzione quando lo scarichi il nome diventa "show.xls"
    ciao
    ricky53

    Ciao di Apoben64
    Se non riesci a far caricare il file, può darsi che è di dimensioni troppo grandi , è in formato xls ?
    oppure è un collegato e quindi non viene riconosciuto.
    se riscontri ulteriori problemi , mandami un email utilizzando la sezione contatti .
    dopodichè avrai un'indirizzo a cui mandare il tuo file.

    un saluto luca

    di Bertoz
    Ho inserito il file regressioni!
    a me serve lo stesso risultato per ogni colonna che nel file che devo elaborare sono oltre cento...
    grazie mille

    Regressioni con vba di Ricky53
    Ho scaricato il file.
    mi servono gli intervalli "y" e "x": penso che siano:
    y - colonna "a" fino alla riga 268
    x - colonne varibili da "b2 in poi, stesse righe?
    confermi?

    ho notato che tra i dati esistono varie righe vuote questo genera un errore. forse sono regressioni separate: questo rende più complicato il tutto.
    dovresti separare i dati in fogli diversi: uno per ogin fascia temporale.
    fammi sapere.

    puoi provare anche tu con il registratore di macro ed effettare la creazione passo passo: strumenti- analisi dati- regressione- intervallo input "y"... appena fatta una regressione fermare il registratore e adattare alla tua esigenza.

    ti invio un esempio (sulle righe da 3 a 100 delle colonne "a" e "d") che puoi personalizzare e rendere ciclico su più colonne.

    ciao, ricky53


     
    Sub Regressione1()
         Application.Run "ATPVBAEN.XLA!Regress", ActiveSheet.Range("$A$3:$A$100"), _
            ActiveSheet.Range("$D$3:$D$100"), False, False, , "", False, False, _
            False, False, , False
    End Sub

    di Bertoz
    Qual è l'esempio?
    la x è la colonna b dalla riga 3 alla riga 268 la y è la colonna d, tale regressione lineare la devo ripetere tante volte quante sono le colonne che vanno dalla d in poi tenendo ferma la x e variando di volta in volta la y (che nel primo caso è la colonna d poi la e; f...). v'è un modo col vba per farlo automaticamente anzichè farla una ad una manualmente?
    vi ringrazio

    Regressione di Big ronnie
    Vedi se questo esempio ti va bene.per gli altri intervalli dovrai adattarlo.ciao
     
    Sub Regressione()
        Sheets(1).Cells(3, 11).Formula = "=LINEST(D3:D185,B3:B185,TRUE,TRUE)"
        Sheets(1).Cells(3, 12).Formula = "=LINEST(E3:E185,B3:B185,TRUE,TRUE)"
        Sheets(1).Cells(3, 13).Formula = "=LINEST(F3:F185,B3:B185,TRUE,TRUE)"
        Sheets(1).Cells(3, 14).Formula = "=LINEST(G3:G185,B3:B185,TRUE,TRUE)"
        Sheets(1).Cells(3, 15).Formula = "=LINEST(H3:H185,B3:B185,TRUE,TRUE)"
    End Sub
    

    Regressione di Ricky53
    L'esempio è quello che vedi evidenziato di giallo è il codice vba da utilizzare e personalizzare
    con un ciclo for / next tante volte per quante sono le colonne che ti servono.
    nel ciclo devi fare in modo di modificare automaticamente la colonna "d" in "e", "f", ecc. ad ogni effettuazione del ciclo,
    così otterrai quello che ti serve.
    ti invio di nuovo il codice con le colonne che hai indicato, apporta le modifiche e vedi se funziona.
    ciao, ricky53
     
    Sub Regressione1()
         Application.Run "ATPVBAEN.XLA!Regress", ActiveSheet.Range("$D$3:$D$185"), _
            ActiveSheet.Range("$B$3:$B$185"), False, False, , "", False, False, _
            False, False, , False
    End Sub

    Regressioni automatiche di Ricky53
    Il file “regressioni_bertoz_nuovo.xls" contiene un esempio automatizzato di produzione delle regressioni (da strumenti-analisi dati-regressione).
    devi modificare solo le colonne sulle quali eseguire le regressioni. al momento le colonne che hai fornito sono 5 e le regressioni, di conseguenza, pure.
    la macro da lanciare ("esegui_regressioni") la trovi nell'ovale del foglio “colonne”, questo foglio contiene, inoltre, nella colonna “a” tutte le colonne del foglio “dati” sulle quali eseguire le regressioni”.
    le regressioni eseguite con la predetta macro le trovi nel foglio “regressioni_tutte”.

    ciao,
    ricky53

    Regressioni di Ricky53
    Fai sapere se hai risolto?
    e' una buona regola per i frequentatori di forum comunicare se e come si è risolto un problema.
    grazie.
    ciao, ricky53