È soltanto un Pokémon con le armi o è un qualcosa di più? Vieni a parlarne su Award & Oscar!

Excel Forum Per condividere esperienze su Microsoft Excel

Da Formula in formato testo a VBA

  • Messaggi
  • OFFLINE
    mattyla
    Post: 42
    Registrato il: 16/12/2004
    Utente Junior
    Excel 2007
    00 05/10/2017 10:15
    Ciao,
    sto cercando di utilizzare in VBA una formula scritta in formato Testo.
    L'intenzione è quella di avere una pagina di riepilogo con le formule che utilizzo per poi applicarle tramite VBA alle celle/range che poi mi servirebbero.

    Utilizzavo per scopi simili il comando Evaluate ma mi sfugge qualcosa.

    Vi allego un file di esempio (provo in formato zip e 7zip..).
    Potete darmi una mano?



    Grazie
    Mattia

    Excel 2010/2013
  • OFFLINE
    Marius44
    Post: 429
    Registrato il: 24/06/2015
    Città: CATANIA
    Età: 80
    Utente Senior
    Excel2019
    00 05/10/2017 17:15
    Ciao Mattia
    Nella tua macro metti solo questo codice (cancella tutto il resto)

    Sub prova()
        Range("F8") = Application.WorksheetFunction.CountIf(Range("D5:D9"), "Prova")
    End Sub
    

    Ovviamente dovrai associare la macro ad un pulsante.

    Ciao,
    Mario
  • OFFLINE
    mattyla
    Post: 42
    Registrato il: 16/12/2004
    Utente Junior
    Excel 2007
    00 05/10/2017 19:14
    Grazie Marius ma a me serve proprio che legga la formula da una cella in formato testo per poi riprodurla sulle celle che mi serviranno.
    La tua soluzione la conosco ma non serve al mio scopo.

    Grazie comunque.
  • OFFLINE
    rollis13
    Post: 553
    Registrato il: 16/08/2015
    Città: CORDENONS
    Età: 67
    Utente Senior
    Excel 2016-32bit Win11
    00 05/10/2017 22:52
    Nella cella F5, sempre in formato testo, scrivi (con o senza l' = davanti):

    COUNTIF(D5:D9,"Prova")

    Il dettaglio che ti sfugge è che nel VBA si scrive nella lingua nativa.

    ______________________________________________________________
    C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
  • OFFLINE
    mattyla
    Post: 43
    Registrato il: 16/12/2004
    Utente Junior
    Excel 2007
    00 06/10/2017 14:23
    COUNTIF
    Ciao Rollis,
    grazie per il suggerimento ma avevo già provato questa soluzione.
    Utilizzando VBA da tempo so che bisogna scrivere le forumule in formato inglese ma la macro rilascia sempre errore #Valore.

    Ho trovato una soluzione che prevede:

    codice
    
    formula = Range("F5").Value 'formula in formato testo
    Range("F8").FormulaLocal = formula
    
    


    e dopo modifico la formula in un valore.

    E' un po' complicata, vorrei restare sull'utilizzo di Evaluate per elaborare al meglio il codice VBA.

    Grazie comunque.

    Mattia

    Excel 2010/2013
  • OFFLINE
    rollis13
    Post: 554
    Registrato il: 16/08/2015
    Città: CORDENONS
    Età: 67
    Utente Senior
    Excel 2016-32bit Win11
    00 06/10/2017 23:06
    Re: COUNTIF
    mattyla, 06/10/2017 14.23:

    [...]Utilizzando VBA da tempo so che bisogna scrivere le forumule in formato inglese ma la macro rilascia sempre errore #Valore.[...]

    Sono abituato a testare quanto scrivo e se raramente scrivo a vanvera è per distrazione. Quando si dice in "lingua nativa" si intende anche la "punteggiatura nativa". Fai copie/incolla di quanto ti ho indicato nel mio precedente post e vedrai che la risposta in cella F8 sarà 5 e non #Valore.



    ______________________________________________________________
    C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)