Condividi:        

Menu scelta opzioni a condizioni multiple

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

Menu scelta opzioni a condizioni multiple

Postdi ldf » 01/04/15 20:15

Salve. Sono nuovo in questo forum e, in generale, non sono un bravo frequentatore dei forum, per cui mi scuso fin d'ora degli sproloqui ed errori.

Nel file allegato http://www.filedropper.com/preventivatorev2, a partire dal foglio Tariffa, vorrei realizzare un preventivatore automatico.

Ho pensato alla possibilità di selezionare alcune opzioni mediante Convalida dati/Elenco per avere la tendina con le opzioni. In alternativa ho creato anche (per la prima volta) Pulsanti di opzione ActiveX. I miei tentativi sono al foglio Preventivatore.

A seconda dei casi poi attraverso formule, come ad esempio somma.più.se, penso di riuscire ad ottenere il costo finale.

Mi sono letteralmente e da tempo bloccato su due problemi.
1) Quello più grande e al quale non so dare risposta: vorrei poter dare un menù di scelta della "franchigia" in Foglio Tariffa, Colonna H. Essa è costituita da due a quattro opzioni dipendenti da: Regione, Periodo, Prodotto, Trigger. Non saprei come offrire la scelta. Penso si tratti di scrivere del codice VBA su una ComboBox (? non ne so praticamente niente, ho fatto prove, ma...). Praticamente arabo per me.
2) L'altro problema, "minore", è dato dal fatto che l'opzione "Agosto", prevede il solo prodotto "Stagione" e non anche "Weekend". Ma i miei pulsanti di scelta non lo sanno :-).

Ho usato Excel 2010.

Grazie fin d0ora della pazienza e dell'aiuto. Buona serata.
ldf
Newbie
 
Post: 9
Iscritto il: 01/04/15 19:44

Sponsor
 

Re: Menu scelta opzioni a condizioni multiple

Postdi Anthony47 » 03/04/15 22:29

Ciao ldf, un tardivo benvenuto nel forum.
I controlli che vedo su foglio Preventivatore sono ActiveX programmabili, quindi il comportamento (di ognuno di essi e di altri eventuali controlli "dipendenti") lo puoi definire nel relativo codice.
Ad esempio, se vuoi impedire che, selezionato Agosto, si possa selezionare WeekEnd, potresti farlo inserendo questa parte nel codice di OptionButton3:
Codice: Seleziona tutto
Private Sub OptionButton3_Change()
If OptionButton3.Value = True Then
    OptionButton5.Value = True
    OptionButton4.Enabled = False
Else
    OptionButton4.Enabled = True
End If
End Sub

[Il problema] più grande e al quale non so dare risposta: vorrei poter dare un menù di scelta della "franchigia" in Foglio Tariffa, Colonna H. Essa è costituita da due a quattro opzioni dipendenti da: Regione, Periodo, Prodotto, Trigger. Non saprei come offrire la scelta. Penso si tratti di scrivere del codice VBA su una ComboBox (? non ne so praticamente niente, ho fatto prove, ma...). Praticamente arabo per me.

Qui purtroppo devi essere molto piu' dettagliato...
Vuoi quindi inserire, in H2:H63 di Tariffa una convalida "dinamica", che presenti solo valori coerenti con altre impostazioni? Se Si allora dovresti creare una tabella che riepiloghi le combinazioni valide e poi potremo vedere come trasformarla in logica Excel.

Ciao, ti aspettiamo.
Avatar utente
Anthony47
Moderatore
 
Post: 19213
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Menu scelta opzioni a condizioni multiple

Postdi ldf » 04/04/15 10:56

Grazie del benvenuto, oltre che della disponibilità e gentilezza nel dare una mano a chi non gliela fa.

Quanto al codice che mi hai dato: funziona benissimo e per me è strafico.

ldf ha scritto:Qui purtroppo devi essere molto piu' dettagliato...
Vuoi quindi inserire, in H2:H63 di Tariffa una convalida "dinamica", che presenti solo valori coerenti con altre impostazioni? Se Si allora dovresti creare una tabella che riepiloghi le combinazioni valide e poi potremo vedere come trasformarla in logica Excel.


Proprio così.
Date le opzioni: Regione, Periodo, Prodotto, Trigger, si potrà scegliere SOLO tra le poche Franchigie relative alla selezione corrispondente alle opzioni dette.
Ad esempio: Regione: Emilia-Romagna; Periodo: Maggio-Agosto; Prodotto: Weekend; Trigger: 1mm - Franchigie offerte in menu: 9,10,11 (le prime tre righe in questo esempio).

Aggiungo un paio di quesiti non da poco.
Il file verrà usato, tra l'altro anche da un paio di persone dotato di Mac e da un paio di Linux (LibreOffice).
1) Ho scoperto che i controlli ActiveX non funzionano (o non so come farli funzionare) su Mac. C'è una soluzione?
2) Il file, con il VBA che ci andremo a mettere, potrà funzionare normalmente anche in formato .ods? Beh, vabbè, qui basta provare... :-)
ldf
Newbie
 
Post: 9
Iscritto il: 01/04/15 19:44

Re: Menu scelta opzioni a condizioni multiple

Postdi ldf » 04/04/15 17:00

Anthony47 ha scritto:1) Ho scoperto che i controlli ActiveX non funzionano (o non so come farli funzionare) su Mac. C'è una soluzione?
2) Il file, con il VBA che ci andremo a mettere, potrà funzionare normalmente anche in formato .ods? Beh, vabbè, qui basta provare... :-)


Mi accorgo di aver omesso di precisare che mi riferivo a Office 2011 per Mac.

Per quanto riguarda il.ods, ho provato e ActiveX non va...

Buona Pasqua a tutti. Grazie, ciao.
ldf
Newbie
 
Post: 9
Iscritto il: 01/04/15 19:44

Re: Menu scelta opzioni a condizioni multiple

Postdi Anthony47 » 05/04/15 01:19

Ah, non avevo capito che il foglio Tariffa era la tabella che io ti chiedevo di preparare...

Ricicliamo quanto fatto tempo fa per ginevravr (vedi viewtopic.php?t=100639#p581213), e utilizziamo il filtro avanzato per creare a catena gli elenchi necessari per la convalida.
Un prototipo e' disponibile qui: https://www.dropbox.com/s/mmqjvu303rcwt ... .xlsm?dl=0

Il foglio su cui ho prototipato "la cosa" e' PIPPO.
In esso ho inserito 5 campi con convalida da elenco.
Ho poi spostato verso il basso a tua tabella su foglio Tariffa, creandomi nelle prime righe lo spazio per inserire le intestazioni (riga 1) e i valori (riga 2) per il filtro avanzato; questi secondi sono la copia di quanto inserito su foglio PIPPO.
A questo punto una macro di Worksheet_Change posizionata sul foglio PIPPO supervisiona il processo e si attiva quando viene modificata una cella dell' intervallo A2:E2, eseguendo a catena:
-la pulizia dei campi "alla destra" di quello modificato
-il ricalcolo dei campi di convalida sempre "alla destra" di quello modificato; questo e' fatto dalla macro ConvaList, che estrae dalla tabella originale una copia filtrata con i valori gia' prescelti e successivamente crea un elenco di valori unici dei campi successivi.
La macro crea 5 intervalli denominati myReg, myPer, myProd, myTrigg e myFranch, usate nella convalida su foglio pippo.

Mi sono permesso di ignorare l' uso di criteri piu' complessi, tipo gli OptionButton che avevi abbozzato in Preventivatore, le cui funzioni, anche se talvosta appaiono scenografiche, sono poco pratiche per quel che vogliamo fare.
In questo esempio e' consentito lasciare dei campi vuoti, se questo e' vietato dovrai controllarlo o con del codice addizionale o con con altri sistemi che producono sul foglio una segnalazione di errore.

Spero che quanto fatto ti sia di qualche utilita'

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

Re: Menu scelta opzioni a condizioni multiple

Postdi ldf » 05/04/15 09:10

Anthony47 ha scritto:Spero che quanto fatto ti sia di qualche utilita'


Accidenti! Funziona benissimo!

Anthony47 ha scritto:Mi sono permesso di ignorare l' uso di criteri piu' complessi


Hai fatto bene,anche a me piace andare al sodo.

Una domanda, sulla destra delle convalide viene scritto il percorso del file sul tuo pc. Questa informazione deve rimanere?

Ora, per andare oltre, si potrebbe forse scrivere in automatico, ad esempio in PIPPO A5:D6, le informazioni Giorni, Somma assicurata base, Massimale, Premio. Si potrebbe inoltre aggiungere in Tariffa la colonna Tipo Franchigia (Assoluta o Relativa) per ottenere anche questo dato in automatico.

Infatti, una volta selezionati i valori dalle convalide dinamiche da te create, anche questi campi risultano selezionati univocamente appartenendo alla medesima riga.

Ho provato a immaginare come potessero scriversi questi comandi guardando i vari .End If Range, ecc. ecc. ma constato che mi mancano le basi minime.

Comunque, Antony47, gratitudine eterna!
ldf
Newbie
 
Post: 9
Iscritto il: 01/04/15 19:44

Re: Menu scelta opzioni a condizioni multiple

Postdi Anthony47 » 07/04/15 20:27

Non sarebbe difficile estendere quanto fatto per includere ulteriori colonne... pero', visto che dichiari di avere poche basi sul vba, non ti conviene limitarti a usare il filtro automatico?
Ritorni alla tua tabella originale, posizioni i filtri automatici su tutte le colonne e fai lavorare l' utente su quei filtri; quando e' rimasta una sola riga allora copi il risultato in un foglio a piacere come base per l' offerta.
Questa seconda fase (la copia su altro foglio) la puoi automatizzare:
-metti in K1 di Tariffa la formula
Codice: Seleziona tutto
=SUBTOTALE(3;A:A)

-poi tasto dx sul tab del foglio Tariffa, scegli Visualizza codice, nella finestra dell' editor delle macro che si apre incolla questo codice:
Codice: Seleziona tutto
Private Sub Worksheet_Calculate()
If Range("K1").Value = 2 Then
    Range("A1:I3").Copy Destination:=Sheets("Foglio2").Range("A1")  '<<<
    Range("K2").Value = "Parametri selezionati, vai a Foglio2"
Else
    Range("K2").Value = "Applica i filtri per selezionare l' offerta"
End If
End Sub

In questo modo quando i filtri producono un solo risultato allora in K2 uscira' un messaggio che informa si puo' procedere a elaborare l' offerta con i dati che contemporaneamente vengono copiati in Foglio2 (modificabile nell' istruzione marcata <<<); eventualmente formatta K2 per dargli una migliore visibilita'.

Il nome del file + percorso da me inserito in PIPPO serve solo come mio appunto, lo puoi cancellare senza timori.

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

Re: Menu scelta opzioni a condizioni multiple

Postdi ldf » 08/04/15 19:17

Ciao Antony.

In realtà, portando poi avanti il lavoro con le istruzioni del tuo precedente post e con qualche formula (somma.più.se) ho raggiunto l'obiettivo a un livello molto soddisfacente.

Quanto mi dici qui, però, credo mi possa essere utile in altre situazioni, così mi sono salvato il tutto.

Quindi grazie per il presente e per il futuro :-).

Buona serata
ldf
Newbie
 
Post: 9
Iscritto il: 01/04/15 19:44

Re: Menu scelta opzioni a condizioni multiple

Postdi ldf » 13/04/15 14:18

Salute a tutti.

Il file con il codice di Antony sta andando alla grande, sia su Excel 2011 (Mac) che su 2007/2010. Ho anche aggiunto dati alla tabella in foglio Tariffa e va tutto regolarmente.

Invece ho problemi con coloro che usano Calc (LibreOffice 4.4.2).

Ho salvato il file da Excel in formato .ods. Poi sono andato a vedere e, cercando qui e là, mi sono accorto che i nomi erano sballati. Ho capito che gli dava fastidio la tabella dati di Excel. Ho rimesso a posto i nomi. Le convalide sembrano funzionare, salvo che non mi pare funzionino le macro.

Qui il file .ods: http://www.filedropper.com/preventivatoremeteov5_1
Qui il file .xlsm: http://www.filedropper.com/preventivatoremeteov5_2

Almeno in Excel riesco ad aprire il VBA per cercare di leggere (capire è tutto un altro discorso).
Con Calc è un po' frustrante...

Forse non dovevo salvare in formato .ods? O ci sono regole di conversione particolari da seguire.

Confesso che non ho fatto una ricerca approfondita (post soprattutto in inglese), ma quel poco che ho visto non mi ha aiutato molto.

Buona giornata e grazie anticipatamente.
ldf
Newbie
 
Post: 9
Iscritto il: 01/04/15 19:44

Re: Menu scelta opzioni a condizioni multiple

Postdi Anthony47 » 13/04/15 20:37

Non ho nessuna esperienza con Calc, quindi speriamo che intervenga qualcun altro.
Comunque io lascerei il file nel formato xlsm, perche' son sicuro che Calc lo dovrebbe aprire regolarmente.

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


Torna a Applicazioni Office Windows


Topic correlati a "Menu scelta opzioni a condizioni multiple":


Chi c’è in linea

Visitano il forum: Nessuno e 36 ospiti