Pagina 1 di 3 123 UltimaUltima
Risultati da 1 a 30 di 71

Discussione: Quantità, Nomi e Ricette



  1. #1
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Quantità, Nomi e Ricette

    Buon pomeriggio a tutti

    Sono un appassionato ricette di e-liquid

    Quindi ho molte boccettine di vari aromi di varie marche ed ognuna con una certa quantità di liquido (ml) all'interno, ad ogni ricetta corrispondono certi aromi con le loro quantità

    Ora la mia domanda è...come mi consigliate di impostare un foglio in modo che ogni volta che eseguo una ricetta, le quantità di liquido in ml che servono si vadano man mano ad aggiornare sulla lista generale degli aromi a mia disposizione ?


    spero sia tutto chiaro :23::32:

  2. #2

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931

    Re: Quantità, Nomi e Ricette

    Ciao emiliano,

    beh, almeno il foglio dovresti crearlo tu visto che solo tu hai la "visione dell'insieme" della tua situazione.

    Comunque, molto probabilmente si dovrà ricorrere al VBA in quanto immagino che il "campo" per le ricette sia uno solo, quindi con le formule, ad ogni inserimento di una nuova ricetta, i valori delle rimanenze non terrebbero conto delle quantità utilizzate nella ricetta precedente.

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  3. I seguenti utenti hanno dato un "Like"


  4. #3
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    Ciao emiliano,

    beh, almeno il foglio dovresti crearlo tu visto che solo tu hai la "visione dell'insieme" della tua situazione.

    Comunque, molto probabilmente si dovrà ricorrere al VBA in quanto immagino che il "campo" per le ricette sia uno solo, quindi con le formule, ad ogni inserimento di una nuova ricetta, i valori delle rimanenze non terrebbero conto delle quantità utilizzate nella ricetta precedente.

    ti allego il file che ho preparato...più che altro vorrei capire come impostare il tutto...
    File Allegati File Allegati

  5. #4

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Ciao,
    non so se ho ben capito, vorresti forse avere la rimanenza in base a quanto impiegato nella ricetta, così:

    =SE.ERRORE(INDICE([Q. ML];CONFRONTA([@Aroma];Ricette!$B$5:$B$33;0))-INDICE(Ricette!$D$5:$D$33;CONFRONTA([@Aroma];Ricette!$B$5:$B$33;0));"")
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  6. I seguenti utenti hanno dato un "Like"


  7. #5

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931

    Re: Quantità, Nomi e Ricette

    Citazione Originariamente Scritto da emiliano73 Visualizza Messaggio
    ti allego il file che ho preparato...più che altro vorrei capire come impostare il tutto...
    Io lascerei solo una tabella nel foglio "Ricette" dove inserirai la tua ricetta ed un pulsante a fianco per "scalare" le quantità utilizzate dal foglio "Aromi":



    Se invece il foglio "Ricette" ti serve come "ricettario"/database, aggiungi un foglio dove sceglierai la tua ricetta.

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  8. I seguenti utenti hanno dato un "Like"


  9. #6
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    grazie ragazzi...mi state dando un grande aiuto

    ho evidenziato dei dati che non si aggiornano come dovrebbero...


    anche l'idea del tasto aggiorna non è male...anzi


    devo tenere conto che queste ricette molte volte vengono anche ripetute, quindi non so se è meglio mettere mano mano che si preparano nel foglio, oppure lavorare in altro modo
    File Allegati File Allegati

  10. #7

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Ciao,
    prendendo al volo il suggerimento di Cromagno (un saluto), ti propongo questa soluzione:

    Codice: 
    Sub aromi()
    Dim wks1 As Worksheet, wks2 As Worksheet, y As Integer, x As Integer
    Set wks1 = Sheets("Aromi")
    Set wks2 = Sheets("Ricette")
        For y = 4 To 55
            For x = 4 To 33
                    If wks1.Range("B" & y) = wks2.Range("B" & x) Then
                          wks1.Range("D" & y) = wks1.Range("D" & y) - wks2.Range("D" & x)
                          wks1.Range("D" & y).Interior.ColorIndex = 6
                   End If
           Next
        Next
    End Sub
    La macro ti scala le quantità impiegate e ti colora di giallo le celle interessate.
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  11. I seguenti utenti hanno dato un "Like"


  12. #8
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    è una buona soluzione....ma se hai provato cliccando su aggiorna, ci sono degli aromi che non si aggiornano...

    Allora vi faccio il discorso un pò più complesso...

    Nella scheda (1) AROMI, faccio la tabella con gli aromi disponibili

    Nella scheda (2) Ricette, scrivo tutte le ricette che voglio o vorrei eseguire....( qui una volta scritte, serve un comando che controlla la disponibilità dell'aroma nella tabella e colora di VERDE quello presente , e di ROSSO il mancante)...quindi una formattazione condizionale sulla SCHEDA 2


    Nella scheda (3) Riporto le ricette FATTE, con uno storico che saranno collegate(collegamento ipertestuale) a vari fogli ( dove su ogni foglio una ricetta con il tasto AGGIORNA o con la stringa =se.errore(indice... )


    è fattibile ??? :186:

  13. #9

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931

    Re: Quantità, Nomi e Ricette

    Citazione Originariamente Scritto da emiliano73 Visualizza Messaggio
    è una buona soluzione....ma se hai provato cliccando su aggiorna, ci sono degli aromi che non si aggiornano...

    Allora vi faccio il discorso un pò più complesso...

    Nella scheda (1) AROMI, faccio la tabella con gli aromi disponibili

    Nella scheda (2) Ricette, scrivo tutte le ricette che voglio o vorrei eseguire....( qui una volta scritte, gli aromi che sono disponibili nel mio database si dovrebbero colorare di VERDE, mentre gli aromi mancanti di ROSSO)

    Nella scheda (3) Riporto le ricette FATTE, con uno storico che saranno collegate(collegamento ipertestuale) a vari fogli ( dove su ogni foglio una ricetta con il tasto AGGIORNA o con la stringa =se.errore(indice... )


    è fattibile ??? :186:
    Ciao a tutti,

    @emiliano

    Foglio1... capito
    Foglio2... capito
    Foglio3... :92:

    Se il foglio 3 è un report (o storico delle ricette già fatte), non capisco dove e come inserisci,scrivi o scegli da un menu a tendina una nuova ricetta da eseguire ???

    Mi ero già fatto una vaga idea del risultato finale, ma questo terzo foglio mi ha spiazzato.

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  14. #10
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    Ciao a tutti,

    @emiliano

    Foglio1... capito
    Foglio2... capito
    Foglio3... :92:

    Se il foglio 3 è un report (o storico delle ricette già fatte), non capisco dove e come inserisci,scrivi o scegli da un menu a tendina una nuova ricetta da eseguire ???

    Mi ero già fatto una vaga idea del risultato finale, ma questo terzo foglio mi ha spiazzato.

    Ho pensato la SCHEDA 3 in questo modo....

    data creazione...quantità preparata....nome ricetta....

    Sul nome ricetta (un collegamento ipertestuale) che vada a prendere un FOGLIO a se, dove è riportata la ricetta eseguita ( quindi ci saranno esempio 100 foglio x 100 ricette )....e quando si farà il collegamento ipertestuale, solo in quel istante si dovranno aggiornare i quantitativi in ml rimanenti di ogni aroma

    PS
    anche se il nome della ricetta è lo stesso...i valori degli aromi cambiano in base al totale degli ml prepatati

  15. #11

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931

    Re: Quantità, Nomi e Ricette

    Citazione Originariamente Scritto da emiliano73 Visualizza Messaggio
    Ho pensato la SCHEDA 3 in questo modo....

    data creazione...quantità preparata....nome ricetta....

    Sul nome ricetta (un collegamento ipertestuale) che vada a prendere un FOGLIO a se, dove è riportata la ricetta eseguita ( quindi ci saranno esempio 100 foglio x 100 ricette )....e quando si farà il collegamento ipertestuale, solo in quel istante si dovranno aggiornare i quantitativi in ml rimanenti di ogni aroma

    PS
    anche se il nome della ricetta è lo stesso...i valori degli aromi cambiano in base al totale degli ml prepatati
    Scusa,
    rileggendo quello che ho scritto mi son reso conto che non ho detto quello non mi tornava... :48:

    Se per ogni ricetta c'è già un foglio apposito, a cosa serve il Foglio2 "Ricette" ?
    Forse anche stavolta non sono riuscito a spiegarmi.....

    Senti, potresti creare un file di esempio con quello che hai detto (naturalmente poche cose, giusto per avere le idee chiare) e facendo un esempio pratico di quando e come inserirai una nuova ricetta prima di "aggiornare" le quantità degli aromi?!?

    Thanks :32:

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  16. I seguenti utenti hanno dato un "Like"


  17. #12
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    eccolo...grazie a te :23::23::23:
    File Allegati File Allegati

  18. #13

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Ciao,
    ho realizzato in parte quello che volevi perchè non ho totalmente ben capito la tua richiesta.
    In pratica hai aggiunto due fogli con i nomi di due ricette (le ricette sono tre) e vorresti una ricetta che abbia un collegamento ... che andrà a modificare la quantità degli aromi?
    Se riesci ad essere più chiaro per questa ultima parte posso completare il lavoro.
    Intanto ti allego il risultato fin qui ottenuto.
    Codice: 
    Sub aromi()
        Dim wks1 As Worksheet, wks2 As Worksheet, wks3 As Worksheet, y As Integer, x As Integer
        Set wks1 = Sheets("Aromi")
        Set wks2 = Sheets("Ricette")
        Set wks3 = Sheets("Storico ricette")
        Set wks4 = Sheets("Boss Reserve")
        Set wks5 = Sheets("Unicorn Milk")
        For y = 4 To 55
            For x = 4 To 33
                If wks1.Range("B" & y) = wks2.Range("B" & x) Then
                    wks1.Range("D" & y) = wks1.Range("D" & y) - wks2.Range("D" & x)
                    wks2.Range("D" & x).Interior.ColorIndex = 4
                    wks1.Range("D" & y).Interior.ColorIndex = 6
                End If
                Next: Next
                i = 4
                For Z = 1 To 100
                    If wks2.Range("A" & Z) = "x" Then
                        wks3.Range("B" & i) = Date
                        wks3.Range("D" & i) = wks2.Range("B" & Z)
                        wks3.Range("C" & i) = wks2.Range("D" & Z)
                        wks3.Range("E" & i) = wks2.Range("C" & Z)
                        i = i + 1
                    End If
                Next
                MsgBox "Le quantità di aromi impiegate sono state corretamente scalate dalla lista", vbInformation, "AVVISO"
        End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  19. I seguenti utenti hanno dato un "Like"


  20. #14
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    Ges ti ri-allego il file con gli appunti, più chiari
    File Allegati File Allegati

  21. #15

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Aggiungo un altro tassello, vedi se intendevi quelli come collegamenti alla ricetta?
    I due aromi restano rossi perchè non è presente il nome uguale nell'elenco e quindi vengono riconosciuti come diversi.

    Codice: 
    Sub aromi()
        Dim wks1 As Worksheet, wks2 As Worksheet, wks3 As Worksheet, y As Integer, x As Integer
        Set wks1 = Sheets("Aromi")
        Set wks2 = Sheets("Ricette")
        Set wks3 = Sheets("Storico ricette")
        Set wks4 = Sheets("Boss Reserve")
        Set wks5 = Sheets("Unicorn Milk")
        For y = 4 To 73
            For x = 4 To 33
                If wks1.Range("B" & y) = wks2.Range("B" & x) And wks1.Range("C" & y) = wks2.Range("C" & x) Then
                    wks1.Range("D" & y) = wks1.Range("D" & y) - wks2.Range("D" & x)
                    wks2.Range("D" & x).Interior.ColorIndex = 4
                    wks1.Range("D" & y).Interior.ColorIndex = 6
                    ElseIf Not wks2.Range("D" & x).Interior.ColorIndex = 4 And wks2.Range("A" & x) = "" And wks2.Range("B" & x) <> "" Then
                    wks2.Range("D" & x).Interior.ColorIndex = 3
                    End If
                Next: Next
                i = 4
                For Z = 1 To 100
                    If wks2.Range("A" & Z) = "x" Then
                        wks3.Range("B" & i) = Date
                        wks3.Range("D" & i) = wks2.Range("B" & Z)
                        wks3.Range("C" & i) = wks2.Range("D" & Z)
                        wks3.Range("E" & i) = wks2.Range("C" & Z)
                        i = i + 1
                    End If
                Next
                MsgBox "Le quantità di aromi impiegate sono state corretamente scalate dalla lista", vbInformation, "AVVISO"
        End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  22. I seguenti utenti hanno dato un "Like"


  23. #16
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    ti ho inserito 2 commenti nel foglio...ci siamo quasi

    e ti ho messo le schede RICETTE come vorrei farlo :23:
    File Allegati File Allegati

  24. #17

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Vedi se così può andare.
    Ho previsto che ogni ricetta si copi nell'apposito foglio e dei pulsanti per ciascun foglio che aggiornano le quantità.

    Codice: 
    Sub aromi()
        Dim wks1 As Worksheet, wks2 As Worksheet, wks3 As Worksheet, y As Integer, x As Integer
        Dim uRiga1 As Long, uRiga2 As Long, uRiga3 As Long
        Set wks1 = Sheets("Aromi")
        Set wks2 = Sheets("Ricette")
        Set wks3 = Sheets("Storico ricette")
        Set wks4 = Sheets("Boss Reserve")
        Set wks5 = Sheets("Sugar Drizzle")
        Set wks6 = Sheets("Unicorn Milk")
        wks2.Range("D:D").Interior.ColorIndex = xlNone
        For y = 4 To 73
            For x = 4 To 46
                If wks1.Range("B" & y) = wks2.Range("B" & x) And wks1.Range("C" & y) = wks2.Range("C" & x) Then
                    wks2.Range("D" & x).Interior.ColorIndex = 4
                    wks1.Range("D" & y).Interior.ColorIndex = 6
                ElseIf Not wks2.Range("D" & x).Interior.ColorIndex = 4 And wks2.Range("A" & x) = "" And wks2.Range("B" & x) <> "" Then
                    wks2.Range("D" & x).Interior.ColorIndex = 3
                End If
                Next: Next
                i = 4
                For Z = 1 To 100
                    If wks2.Range("A" & Z) = "x" Then
                        wks3.Range("B" & i) = Date
                        wks3.Range("D" & i) = wks2.Range("B" & Z)
                        wks3.Range("C" & i) = wks2.Range("D" & Z)
                        wks3.Range("E" & i) = wks2.Range("C" & Z)
                        i = i + 1
                    End If
                Next
                With wks2
                    uRiga1 = wks4.Range("B" & Rows.Count).End(xlUp).Row + 2
                    uRiga2 = wks5.Range("B" & Rows.Count).End(xlUp).Row + 2
                    uRiga3 = wks6.Range("B" & Rows.Count).End(xlUp).Row + 2
                    .Range("B3:D15").Copy Destination:=wks4.Range("B" & uRiga1)
                    .Range("B18:D31").Copy Destination:=wks5.Range("B" & uRiga2)
                    .Range("B33:D46").Copy Destination:=wks6.Range("B" & uRiga3)
                End With
                MsgBox "Controllo effettuato", vbInformation, "AVVISO"
                Set wks1 = Sheets("Aromi")
                Set wks2 = Nothing
                Set wks3 = Nothing
                Set wks4 = Nothing
                Set wks5 = Nothing
                Set wks6 = Nothing
    End Sub
    Codice: 
    Sub aggiorna1()
     Dim wks1 As Worksheet, wks4 As Worksheet, y As Integer, x As Integer
        Set wks1 = Sheets("Aromi")
        Set wks4 = Sheets("Boss Reserve")
        For y = 4 To 73
            For x = 4 To 46
                If wks1.Range("B" & y) = wks4.Range("B" & x) And wks1.Range("C" & y) = wks4.Range("C" & x) Then
                     wks1.Range("D" & y) = wks1.Range("D" & y) - wks4.Range("D" & x)
                     End If
            Next
            Next
            MsgBox "Le quantità di aromi impiegate sono state scalate dalla lista", vbInformation, "AVVISO"
            Set wks1 = Nothing
            Set wks4 = Nothing
        End Sub
    Codice: 
    Sub aggiorna2()
    Dim wks1 As Worksheet, wks5 As Worksheet, y As Integer, x As Integer
        Set wks1 = Sheets("Aromi")
        Set wks5 = Sheets("Sugar Drizzle")
        For y = 4 To 73
            For x = 4 To 46
                If wks1.Range("B" & y) = wks5.Range("B" & x) And wks1.Range("C" & y) = wks5.Range("C" & x) Then
                     wks1.Range("D" & y) = wks1.Range("D" & y) - wks5.Range("D" & x)
                     End If
            Next
            Next
            MsgBox "Le quantità di aromi impiegate sono state scalate dalla lista", vbInformation, "AVVISO"
            Set wks2 = Nothing
        Set wks1 = Nothing
        Set wks5 = Nothing
        End Sub
    Codice: 
    Sub aggiorna3()
    Dim wks1 As Worksheet, wks6 As Worksheet, y As Integer, x As Integer
        Set wks1 = Sheets("Aromi")
        Set wks6 = Sheets("Unicorn Milk")
    For y = 4 To 73
            For x = 4 To 46
                If wks1.Range("B" & y) = wks6.Range("B" & x) And wks1.Range("C" & y) = wks6.Range("C" & x) Then
                     wks1.Range("D" & y) = wks1.Range("D" & y) - wks6.Range("D" & x)
                     End If
            Next
            Next
            MsgBox "Le quantità di aromi impiegate sono state scalate dalla lista", vbInformation, "AVVISO"
        Set wks1 = Nothing
        Set wks6 = Nothing
    End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  25. I seguenti utenti hanno dato un "Like"


  26. #18

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931

    Re: Quantità, Nomi e Ricette

    Buongiorno a tutti,

    ieri ho iniziato a scrivere qualcosa ma il sonno ha preso il sopravvento :277:

    vedo che comunque hai avuto il supporto del buon ges (:246:), quindi continuerò a completare il file (senza fretta) solo perchè non è la prima volta che viene fatta una domanda di questo tipo, quindi un file già pronto può sempre tornare utile. :32:

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  27. #19

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931

    Re: Quantità, Nomi e Ricette

    [EDIT]

    @ges
    ti lascio comunque il codice che avevo fatto ieri (solo per la colorazione del foglio "Ricette").
    L'ho fatto un pò lunghetto perchè, come accennato prima, avevo intenzione di fare un file da poter usare in futuro...

    Ho usato "Option Compare Text" e "Trim" perchè un aroma nel foglio "Aromi" presentava degli spazi superflui e quindi non veniva trovata una corrispondenza.

    Codice: 
    Option Explicit
    Option Compare Text
    
    
    Sub Aromi_Presenti()
    Dim Wks1 As Worksheet, Wks2 As Worksheet, urAromi As Long, urRicette As Long
    Dim i As Long, Presente As Integer, Mancante As Integer, j As Long
    Dim Verifica As Boolean, Report As String, Aromi As Collection
    
    
    Set Wks1 = Worksheets("Aromi")
    Set Wks2 = Worksheets("Ricette")
    Set Aromi = New Collection
    urAromi = Wks1.Range("B" & Rows.Count).End(xlUp).Row
    urRicette = Wks2.Range("B" & Rows.Count).End(xlUp).Row
    Presente = 26112
    Mancante = 192
    
    
    With Wks2
        For i = 3 To urRicette
            Verifica = True
            If IsNumeric(.Range("D" & i).Value) And .Range("D" & i).Value <> "" Then
                Verifica = False
                For j = 5 To urAromi
                    If Trim(.Range("B" & i).Value) = Trim(Wks1.Range("B" & j).Value) Then
                        Verifica = True
                        If .Range("D" & i).Value <= Wks1.Range("E" & j).Value Then
                            .Range("B" & i & ":" & "D" & i).Font.Color = Presente
                        Else
                            .Range("B" & i & ":" & "D" & i).Font.Color = Mancante
                        End If
                        .Range("B" & i & ":" & "D" & i).Interior.ColorIndex = xlNone
                        GoTo prossimo
                    End If
                Next j
            End If
    prossimo:
        On Error Resume Next
        If Verifica = False Then
            .Range("B" & i & ":" & "D" & i).Interior.ColorIndex = 3
            Aromi.Add .Range("B" & i).Value, CStr(.Range("B" & i).Value)
        End If
        Next i
    End With
    
    
    For i = 1 To Aromi.Count
        Report = Report & Chr(10) & Aromi(i)
    Next i
    
    
    If Aromi.Count >= 1 Then
        MsgBox "I seguenti aromi non sono presenti in dispensa:" & vbCrLf & Report & vbCrLf & _
        vbCrLf & "Accertarsi di aver scritto correttamente il nome dell'aroma.", vbCritical, _
        "AROMI MANCANTI"
    End If
    
    
    Set Wks1 = Nothing
    Set Wks2 = Nothing
    Set Aromi = Nothing
    End Sub
    Avevo pensato ti avviare il codice con gli eventi del foglio "Ricette":

    Codice: 
    Private Sub Worksheet_Activate()
        Call Aromi_Presenti
    End Sub
    
    
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Not Intersect(Target, Range("B:D")) Is Nothing Then
            Call Aromi_Presenti
        End If
    End Sub
    ma forse, utilizzare il pulsante come hai fatto tu è più pratico...

    Ciao
    Tore

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  28. #20
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    rientrato ora dal lavoro....

    ges, lavoro perfetto:23::23::23:

    ...aspetto di vedere anche il lavoro di cromagno

    ora porto il bimbo alle sue 2 ore di scuola calcio...e dopo mi dedico al foglio, così gli diamo un aspetto grafico più accattivante e controlliamo che tutto si svolga correttamente
    grazie ancora ragazzi, a più tardi:246::246::246:

  29. #21
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    allora ti ho messo alcuni appunti, nella scheda 2...spero di essere stato chiaro altrimenti sono qui pronto a spiegarti
    File Allegati File Allegati

  30. #22

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Hai cambiato diverse cose ... ho cercato di sistemare in base ai tuoi appunti.

    Codice: 
    Sub aromi()
        Dim wks1 As Worksheet, wks2 As Worksheet, wks3 As Worksheet, y As Integer, x As Integer
        Dim uRiga1 As Long, uRiga2 As Long, uRiga3 As Long
        Set wks1 = Sheets("Aromi")
        Set wks2 = Sheets("Ricette")
        Set wks3 = Sheets("Storico ricette")
        Set wks4 = Sheets("Boss Reserve")
        Set wks5 = Sheets("Sugar Drizzle")
        Set wks6 = Sheets("Unicorn Milk")
        Application.ScreenUpdating = False
        wks2.Range("D:D").Interior.ColorIndex = xlNone
        For y = 6 To 74
            For x = 4 To 20
                If wks1.Range("B" & y) = wks2.Range("B" & x) And wks1.Range("C" & y) = wks2.Range("C" & x) Then
                    wks2.Range("D" & x).Interior.ColorIndex = 4
                    wks1.Range("D" & y).Interior.ColorIndex = 6
                ElseIf Not wks2.Range("D" & x).Interior.ColorIndex = 4 And wks2.Range("A" & x) = "" And wks2.Range("B" & x) <> "" Then
                    wks2.Range("D" & x).Interior.ColorIndex = 3
                End If
                Next: Next
                i = 4
                For Z = 1 To 100
                    If wks2.Range("A" & Z) = "x" Then
                        wks3.Range("B" & i) = Date
                        wks3.Range("D" & i) = wks2.Range("B" & Z)
                        wks3.Range("C" & i) = wks2.Range("D" & Z)
                        wks3.Range("E" & i) = wks2.Range("C" & Z)
                        i = i + 1
                    End If
                Next
                With wks2
                If UCase(.Range("B2")) = "BOSS RESERVE" Then
                    .Range("B2:D20").Copy Destination:=wks4.Range("B2")
                    ElseIf UCase(.Range("B2")) = "SUGAR DRIZZLE" Then
                    .Range("B2:D20").Copy Destination:=wks5.Range("B2")
                    ElseIf UCase(.Range("B2")) = "UNICORN MILK" Then
                    .Range("B2:D20").Copy Destination:=wks6.Range("B2")
                    End If
                 End With
                MsgBox "Controllo effettuato", vbInformation, "AVVISO"
                Set wks1 = Nothing
                Set wks2 = Nothing
                Set wks3 = Nothing
                Set wks4 = Nothing
                Set wks5 = Nothing
                Set wks6 = Nothing
            Application.ScreenUpdating = True
    End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  31. I seguenti 2 utenti hanno dato un "Like" a ges per questo post:


  32. #23
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    ges.....ho scritto ancora, non mi voler male :23:
    File Allegati File Allegati

  33. #24

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Nessun problema Emiliano,
    mi rendo conto che non è facile capirsi al volo nel forum.

    Allora, credo di aver modificato tutto secondo le tue richieste, guarda se va bene.

    Ho inoltre inserito altri pulsanti per copiare e per svuotare le celle il resto delle modifiche fatte le trovi nel file allegato.

    Codice: 
    Sub aromi()
        Dim wks1 As Worksheet, wks2 As Worksheet, wks3 As Worksheet, y As Integer, x As Integer
        Dim uRiga1 As Long, uRiga2 As Long, uRiga3 As Long
        Set wks1 = Sheets("Aromi")
        Set wks2 = Sheets("Ricette")
        Set wks3 = Sheets("Storico ricette")
        Set wks4 = Sheets("Boss Reserve")
        Set wks5 = Sheets("Sugar Drizzle")
        Set wks6 = Sheets("Unicorn Milk")
        Application.ScreenUpdating = False
        wks2.Range("D:D").Interior.ColorIndex = xlNone
        wks1.Range("D6:D74").Interior.ColorIndex = xlNone
        For y = 6 To 74
            For x = 4 To 20
              If Trim(wks1.Range("B" & y)) = Trim(wks2.Range("B" & x)) And Trim(wks1.Range("C" & y)) = Trim(wks2.Range("C" & x)) And Trim(wks1.Range("D" & y)) >= Trim(wks2.Range("D" & x)) Then
                    wks2.Range("D" & x).Interior.ColorIndex = 4
                    wks1.Range("D" & y).Interior.ColorIndex = 6
                ElseIf Not wks2.Range("D" & x).Interior.ColorIndex = 4 And wks2.Range("A" & x) = "" And wks2.Range("B" & x) <> "" Then
                    wks2.Range("D" & x).Interior.ColorIndex = 3
                End If
                If wks1.Range("D" & y) < 2 Then
                wks1.Range("D" & y).Interior.ColorIndex = 3
                End If
                Next: Next
                MsgBox "Controllo effettuato", vbInformation, "AVVISO"
                Set wks1 = Nothing
                Set wks2 = Nothing
                Set wks3 = Nothing
                Set wks4 = Nothing
                Set wks5 = Nothing
                Set wks6 = Nothing
            Application.ScreenUpdating = True
    End Sub
    Codice: 
    Sub copia()
     Dim wks2 As Worksheet, wks3 As Worksheet, wks4 As Worksheet, wks5 As Worksheet
        Dim wks6 As Worksheet, y As Integer, x As Integer
        Set wks2 = Sheets("Ricette")
        Set wks4 = Sheets("Boss Reserve")
        Set wks5 = Sheets("Sugar Drizzle")
        Set wks6 = Sheets("Unicorn Milk")
        With wks2
        Application.ScreenUpdating = False
               If UCase(.Range("B2")) = "BOSS RESERVE" Then
                    .Range("B2:D20").Copy Destination:=wks4.Range("B2")
                    ElseIf UCase(.Range("B2")) = "SUGAR DRIZZLE" Then
                    .Range("B2:D20").Copy Destination:=wks5.Range("B2")
                  ElseIf UCase(.Range("B2")) = "UNICORN MILK" Then
                    .Range("B2:D20").Copy Destination:=wks6.Range("B2")
                    End If
                    MsgBox "Ricetta copiata nel rispettivo foglio", vbInformation, "AVVISO"
                 End With
                 Set wks2 = Nothing
                Set wks4 = Nothing
                Set wks5 = Nothing
                Set wks6 = Nothing
    End Sub
    Codice: 
    Sub svuota()
    Dim wks2 As Worksheet
    Set wks2 = Sheets("Ricette")
        wks2.Range("B4:D20") = ""
        wks2.Range("B4:D20").Interior.ColorIndex = xlNone
        Set wks2 = Nothing
    End Sub
    Codice: 
    Sub aggiorna1()
     Dim wks1 As Worksheet, wks4 As Worksheet, y As Integer, x As Integer
        Set wks1 = Sheets("Aromi")
        Set wks4 = Sheets("Boss Reserve")
        For y = 4 To 73
            For x = 4 To 46
                If wks1.Range("B" & y) = wks4.Range("B" & x) And wks1.Range("C" & y) = wks4.Range("C" & x) Then
                     wks1.Range("D" & y) = wks1.Range("D" & y) - wks4.Range("D" & x)
                     End If
            Next
            Next
            MsgBox "Le quantitˆ di aromi impiegate sono state scalate dalla lista", vbInformation, "AVVISO"
            Set wks1 = Nothing
            Set wks4 = Nothing
        End Sub
    Codice: 
    Sub aggiorna2()
    Dim wks1 As Worksheet, wks5 As Worksheet, y As Integer, x As Integer
        Set wks1 = Sheets("Aromi")
        Set wks5 = Sheets("Sugar Drizzle")
        For y = 4 To 73
            For x = 4 To 46
                If wks1.Range("B" & y) = wks5.Range("B" & x) And wks1.Range("C" & y) = wks5.Range("C" & x) Then
                     wks1.Range("D" & y) = wks1.Range("D" & y) - wks5.Range("D" & x)
                     End If
            Next
            Next
            MsgBox "Le quantitˆ di aromi impiegate sono state scalate dalla lista", vbInformation, "AVVISO"
            Set wks2 = Nothing
        Set wks1 = Nothing
        Set wks5 = Nothing
        End Sub

    Codice: 
    Sub aggiorna3()
    Dim wks1 As Worksheet, wks6 As Worksheet, y As Integer, x As Integer
        Set wks1 = Sheets("Aromi")
        Set wks6 = Sheets("Unicorn Milk")
    For y = 4 To 73
            For x = 4 To 46
                If wks1.Range("B" & y) = wks6.Range("B" & x) And wks1.Range("C" & y) = wks6.Range("C" & x) Then
                     wks1.Range("D" & y) = wks1.Range("D" & y) - wks6.Range("D" & x)
                     End If
            Next
            Next
            MsgBox "Le quantitˆ di aromi impiegate sono state scalate dalla lista", vbInformation, "AVVISO"
        Set wks1 = Nothing
        Set wks6 = Nothing
    End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  34. #25
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    eccomi sembra tutto ok tranne un paio di cose...

    1) nella lista aromi alcuni di questi continuano ad avere le caselle quantità colorate di giallo...invece non dovrebbero colorarsi, fino a quando la quantità di aroma arriva ad essere =< 2

    2) il tasto COPIA che hai creato è molto carino...ma se vado ad aggiungere una nuova scheda con un altro nome di ricetta, il tasto smette di funzionare e mi restituisce errore di debug...intervallo non trovato

  35. #26

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Citazione Originariamente Scritto da emiliano73 Visualizza Messaggio
    eccomi sembra tutto ok tranne un paio di cose...

    1) nella lista aromi alcuni di questi continuano ad avere le caselle quantità colorate di giallo...invece non dovrebbero colorarsi, fino a quando la quantità di aroma arriva ad essere =< 2

    ...
    Avevo lasciato che si colorassero di giallo gli aromi impiegati nella ricetta e che invece si colorassero di rosso gli aromi che <2.
    Adesso ho modificato che si colorano di rosso solo gli aromi <=2

    Citazione Originariamente Scritto da emiliano73 Visualizza Messaggio
    ...

    2) il tasto COPIA che hai creato è molto carino...ma se vado ad aggiungere una nuova scheda con un altro nome di ricetta, il tasto smette di funzionare e mi restituisce errore di debug...intervallo non trovato
    Cliccando sul tasto "COPIA" viene copiata la ricetta ed incollata nel foglio che ha lo stesso nome della ricetta (cioè se la ricetta è chiamata Boss Reserve (nome in cella B2) si copia nel foglio Boss Reserve, ecc.) ovviamente se metti un nome diverso alla ricetta da uno dei fogli ti da errore
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  36. #27
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    ok

    sto facendo una prova....creo una NUOVA SCHEDA....con il nome YOGURT

    poi provo a vedere se ho tutti gli ingredienti....poi clicco sul tasto COPIA, mi dice che l'ha copiata sul foglio...ma dove ????

  37. #28

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    YOGURT non c'è tra i fogli che hai indicato, c'è solo BOSS RESERVE, SUGAR DRIZZLE e UNICORN MILK .. pensavo fossero solo questi .. non me ne intendo.
    Se vuoi che si copi anche in altri fogli da te aggiunti in automatico devo cambiare il codice ... ma ora, scusami, ma è tardi ... lo faccio domani.
    Buonanotte.
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  38. #29
    L'avatar di emiliano73
    Clicca e Apri
    Data Registrazione
    May 2016
    Località
    Roma
    Età
    44
    Messaggi
    33
    Versione Office
    Excel 2016
    Likes ricevuti
    0
    Likes dati
    19

    Re: Quantità, Nomi e Ricette

    si nessun problema.....in pratica le ricette e le schede che poi andrò a creare sono migliaia :188:

  39. #30

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7174
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2066
    Likes dati
    1308

    Re: Quantità, Nomi e Ricette

    Buongiorno,
    con in mano una tazza di caffè ti scrivo il codice che ti copia la ricetta nel foglio con lo stesso nome.
    Adesso dovrebbe essere tutto a posto.
    Codice: 
     Sub copia()    
    Dim wks2 As Worksheet, i As Long
        Set wks2 = Sheets("Ricette")
        On Error GoTo errore
        Application.ScreenUpdating = False
        For i = 1 To Sheets.Count
            Foglio = Sheets(i).Name
            If UCase(Foglio) = UCase(wks2.Range("B2")) Then
                wks2.Range("B2:D20").Copy Destination:=Sheets(Foglio).Range("B2")
            End If
        Next
        MsgBox "Ricetta copiata nel rispettivo foglio", vbInformation, "AVVISO"
        Set wks2 = Nothing
        Exit Sub
    errore:      MsgBox "Ricetta diversa dal nome del foglio"
    End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

Discussioni Simili

  1. [Risolto] Come riepilogare articoli e quantità
    Di Tonyvox nel forum Domande su Excel in generale
    Risposte: 8
    Ultimo Messaggio: 18/02/17, 16:07
  2. controllo coerenza quantità da pagare
    Di Giancarlo56 nel forum Domande su Excel in generale
    Risposte: 10
    Ultimo Messaggio: 06/01/17, 21:42
  3. Aggiungere la quantità di anni
    Di RUGANT54 nel forum Domande su Excel in generale
    Risposte: 2
    Ultimo Messaggio: 22/12/16, 12:56
  4. [Risolto] Grafico a quantità dati variabile
    Di mirred nel forum Domande sui Grafici di Excel
    Risposte: 1
    Ultimo Messaggio: 25/11/16, 13:14
  5. cerca la posizione e quantità
    Di VICTOR BUJA nel forum Domande su Excel in generale
    Risposte: 13
    Ultimo Messaggio: 28/11/15, 18:08

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •