none
Problema con convalida Dati. RRS feed

  • Domanda

  • Buon pomeriggio.

    Ho un bel problema con la convalida dati di excel generata tramite VBA.

    Ho creato un pulsante che mi inserisce una riga ed in una di queste celle devo inserire una convalida dati.

    Sub Macro1()
    
    Prova = "=E(VAL.NUMERO(VALORE(G18));LUNGHEZZA(G25)>=4;LUNGHEZZA(G18)<=21)"
    
        Range("G18:I18").Select
        With Selection.Validation
            .Delete
            .Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:=xlEqual, Formula1:=Prova
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = ""
            .ErrorTitle = ""
            .InputMessage = ""
            .ErrorMessage = ""
            .ShowInput = True
            .ShowError = True
        End With
    
    End Sub
    

    Beh! Non vuole in nessuna maniera funzionare, mi compare sempre errore di run-time '1004'. Dopo vai tentativi sono riuscito a capire che si tratta del carattere "=" posto ad inizio variabile (prova). Se lo rimuovo la macro VBA non mi genera errore, ma purtroppo la formula non funziona nella convalida dati.

    Se la formula la inserisco manualmente, funziona. Se faccio generare la macro tramite il registratore, excel mi crea il codice ma se lo eseguo riecco comparire l'errore 1004 poichè mi inserisce l'=.

    Qualcuno di voi potrebbe darmi una mano?

    Sono ormai 2 giorni che cerco soluzioni in giro per il web, ma nulla!

    Ho trovato soluzioni "tappa buchi" mettendo la formula in una cella diversa e nella convalida dati puntare a tale cella, ma sinceramente vorrei evitare. Non è una soluzione pulita.

    Grazie

    domenica 2 agosto 2020 16:53

Risposte

Tutte le risposte