Condividi:        

Macro per cambiare formula con richiesta data

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Macro per cambiare formula con richiesta data

Postdi Making » 26/02/18 10:03

Buongiorno, vorrei sapere se esiste il modo di creare una macro in XL che chieda attraverso una finestra il nome del file da cui prendere una cella di confronto. Mi serve tracciare le modifiche rispetto ad un giorno precedente che ho salvato su uno file con lo stesso nome ma con data diversa (tipo 2018-02-26 - xxxxx) e vorrei non doverlo tutte le volte cambiare con il cerca e sostituisci. C'è un modo?

Grazie
Making
Utente Junior
 
Post: 49
Iscritto il: 22/07/15 12:50

Sponsor
 

Re: Macro per cambiare formula con richiesta data

Postdi Anthony47 » 26/02/18 19:42

Ma tu vorresti cambiare "tutte le formule" che puntano al file sbagliato, oppure sono limitate a un range specifico?
E poi questo cambiamento lo vorresti fare in modo dinamico durante l'uso del file o basta farlo ad esempio all'apertura?

Puoi fare un esempio di formule attuali e di come dovrebbero essere cambiate?

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19183
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro per cambiare formula con richiesta data

Postdi Making » 27/02/18 18:30

Grazie per la risposta, ogni giorno elaboro un foglio che contiene dati su ordini e spedizioni. Il giorno dopo ho bisogno di vedere gli scostamenti (sulle stesse celle) rispetto al giorno precedente o a una data da me stabilita.

Tutti i file si chiamano AAAA-MM-GG - pippo.xlsm. Alla fine del foglio c'è una tabella che mostra gli scostamenti e che contiene tutte formule come la seguente: =+E23-'C:\Analisi\[AAAA-MM-GG - pippo.xlsm]Main'!E23. Quindi ogni giorno su questa tabella di confronto eseguo un cerca e sostituisci immettendo la data di confronto.

Vorrei trovare un modo più semplice per fare questo confronto in automatico visto che devo solo inserire la data dalla quale voglio fare il confronto in modo che la sostituisca al nome del file. Help
Making
Utente Junior
 
Post: 49
Iscritto il: 22/07/15 12:50

Re: Macro per cambiare formula con richiesta data

Postdi Anthony47 » 27/02/18 19:32

Allora prova a inserire questa macro in un Modulo standard del vba:
Codice: Seleziona tutto
Sub newD()
Dim fCell As String, mySplit, newD, oldD
'
fCell = "D5"            '<<< Una cella contenente la vecchia data
'
mySplit = Split(" " & Range(fCell).FormulaLocal, "[", , vbTextCompare)
If UBound(mySplit) > 0 Then
    oldD = Split(mySplit(1), " - ", , vbTextCompare)(0)
    newD = Application.InputBox(PrompT:="La data di confronto", Type:=1)
    Application.DisplayAlerts = False
        Cells.Replace What:=oldD, Replacement:=Format(newD, "YYYY-MM-DD"), LookAt:=xlPart, _
         SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
         ReplaceFormat:=False
    Application.DisplayAlerts = True
Else
    MsgBox ("Non ho individuato la parte da sostituire" & vbCrLf & Range(fCell).FormulaLocal)
End If
End Sub

La riga marcata <<< va compilata come da commento.

All'occorrenza avvia la Sub newD; ti sara' chiesto di inserire la nuova data e le formule saranno modificate di conseguenza.
Non sbagliare a inserire la data, perche' la macro controlla solo se quello che hai inserito puo' essere tradotto in data, non se quel nome file esiste.
Sono valide date le seguenti digitazioni:
Codice: Seleziona tutto
01 gen    - 1  gen anno corrente
01-02     - 1 feb anno corrente
24/3      - 24 marzo anno corrente
11/12/55  - 11 dic 1955
11/12/20  - 11 dic 2010


Ma la raccomandazione e' di inserire sempre date non equivocabili

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19183
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro per cambiare formula con richiesta data

Postdi Making » 27/02/18 19:42

Grazie, ma le celle da cambiare sono in un range, nel senso che sono più di una poichè le formule sono diverse.
Making
Utente Junior
 
Post: 49
Iscritto il: 22/07/15 12:50

Re: Macro per cambiare formula con richiesta data

Postdi Making » 27/02/18 19:47

...provandola ho visto che inserendo anche solo una cella le cambia tutte!!!! Grazie
Making
Utente Junior
 
Post: 49
Iscritto il: 22/07/15 12:50


Torna a Applicazioni Office Windows


Topic correlati a "Macro per cambiare formula con richiesta data":


Chi c’è in linea

Visitano il forum: Nessuno e 58 ospiti