Risultati da 1 a 14 di 14

Discussione: Lista automatica



  1. #1
    L'avatar di Simon
    Clicca e Apri
    Data Registrazione
    Sep 2016
    Località
    Milano
    Messaggi
    4
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    1

    Lista automatica

    Salve, ho una semplice domanda: si può tramite una lista fatta in precedenza con nomi e cognomi di tot persone, fare in modo che quei nomi in maniera del tutto casuale vanno a finire in un programma mensile nelle caselle da me prestabilite, tutto ciò è possibile? Se si, come? Grazie in anticipo

    Esempio: https://docs.google.com/spreadsheets...it?usp=sharing
    Ultima modifica fatta da:Gerardo Zuccalà; 18/09/16 alle 00:30 Motivo: messo [Risolto]

  2. #2
    L'avatar di Powerwin
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Milano
    Messaggi
    1279
    Versione Office
    2016 - 2010
    Likes ricevuti
    179
    Likes dati
    63

    Re: Lista automatica

    Ciao Simon, benvenuto nel forum, tutto o quasi è fattibile, posta un file senza dati sensibili con quello che hai iniziato a fare e noi ti aiuteremo a trovare una soluzione

    Ciao
    Flavio


  3. #3
    L'avatar di Simon
    Clicca e Apri
    Data Registrazione
    Sep 2016
    Località
    Milano
    Messaggi
    4
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    1

    Re: Lista automatica

    Grazie ne creo subito uno online

  4. #4
    L'avatar di Simon
    Clicca e Apri
    Data Registrazione
    Sep 2016
    Località
    Milano
    Messaggi
    4
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    1

    Re: Lista automatica


  5. #5
    L'avatar di Powerwin
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Milano
    Messaggi
    1279
    Versione Office
    2016 - 2010
    Likes ricevuti
    179
    Likes dati
    63

    Re: Lista automatica

    metti in

    B5=INDICE($L$5:$L$38;CASUALE.TRA(1;34))
    Flavio


  6. I seguenti 2 utenti hanno dato un "Like" a Powerwin per questo post:


  7. #6
    L'avatar di Simon
    Clicca e Apri
    Data Registrazione
    Sep 2016
    Località
    Milano
    Messaggi
    4
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    1

    Re: Lista automatica

    Grazie mi sei stato di molto aiuto!

  8. #7
    L'avatar di Powerwin
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Milano
    Messaggi
    1279
    Versione Office
    2016 - 2010
    Likes ricevuti
    179
    Likes dati
    63

    Re: Lista automatica

    Grazie a te del riscontro
    Flavio


  9. #8

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

    Re: Lista automatica

    Ciao ,
    anche se Simon ha risolto con l'ottima soluzione di Flavio, che saluto, stavo lavorando ad una soluzione col vba che a questo punto posto lo stesso.

    Adattando del codice che ho trovato in rete sono arrivato a questa soluzione che estrae univocamente e casualmente i 30 dipendenti assegnandoli in un turno prestabilito
    Codice: 
    Option Explicit
    Sub Estrai_univoci()
        Dim primo As Integer, ultimo As Integer, i As Integer, x As Integer
        Dim k As Integer, y As Integer, temp As Integer
            primo = 1: ultimo = 34
            ReDim arr(primo To ultimo, 1 To 1)
            For i = primo To ultimo
              arr(i, 1) = i
            Next
            For i = ultimo To primo Step -1
                 x = Rnd * (ultimo - primo + 1) + primo
              If x > ultimo Then x = ultimo
                temp = arr(i, 1)
                arr(i, 1) = arr(x, 1)
                arr(x, 1) = temp
            Next
            Range("F5:F" & (ultimo - primo + 1)) = arr
            For k = 3 To 5
            For y = 5 To 35
                If Cells(y, k) <> "" Then
                    Cells(y, k) = Cells(y, 2)
                End If
        Next: Next
    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!

  10. I seguenti utenti hanno dato un "Like"


  11. #9
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160

    Re: Lista automatica

    Buona giornata a Tutti.

    Chiedo scusa se intervengo in una Discussione "Risolta", ma ho l'impressione che i turni non siano univoci; voglio dire, troveremo dei Collaboratori che, durante tutto il mese lavorativo, non sono impegnati in alcun turno di lavoro mentre Altri impegnati in più turni.
    Questo è corretto?

    Grazie della Vostra attenzione.



    A disposizione.

    Buona Domenica.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

  12. #10

    L'avatar di Rubik72
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Cosenza
    Età
    45
    Messaggi
    2646
    Versione Office
    Excel 2013
    Likes ricevuti
    971
    Likes dati
    886

    Re: Lista automatica

    Un saluto a tutti.
    Il "bug" della funzione "CASUALE", che potrebbe estrarre numeri già estratti, si può risolvere con la vecchia funzione RANGO:

    impostare in una colonna di appoggio (magari di fianco all'elenco degli impiegati e magari da nascondere) la funzione CASUALE() e tirare giù;

    in B5=INDICE($L$5:$L$38;RANGO(K5;$K$5:$K$34)).

    Questa formula, essendo volatile, si aggiorna ad ogni modifica del foglio (oppure F9), quindi propongo anche la soluzione alternativa col VBA (statica):
    Codice: 
    Sub GeneraTurni()
    Dim Coll As Collection
    Dim Num As Integer
    Dim i As Long
    Dim Impiegati As Range
    Dim NumImpiegati As Long
    
    
    Set Coll = New Collection
    Set Impiegati = Range("m5:m38")
    NumImpiegati = Impiegati.Rows.Count
    
    
    Randomize Timer
    
    
    On Error Resume Next
    Do Until Coll.Count = NumImpiegati
        Num = Rnd * NumImpiegati + 1
        Coll.Add Impiegati(Num), CStr(Impiegati(Num))
    Loop
    On Error GoTo 0
    
    
    For i = 1 To NumImpiegati
        Cells(i + 4, 2) = Coll(i)
    Next
    
    
    Set Impiegati = Nothing
    Set Coll = Nothing
    
    
    End Sub
    File Allegati File Allegati

  13. I seguenti 2 utenti hanno dato un "Like" a Rubik72 per questo post:


  14. #11
    L'avatar di Powerwin
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Milano
    Messaggi
    1279
    Versione Office
    2016 - 2010
    Likes ricevuti
    179
    Likes dati
    63

    Re: Lista automatica

    Citazione Originariamente Scritto da ges Visualizza Messaggio
    Ciao ,
    anche se Simon ha risolto con l'ottima soluzione di Flavio, che saluto, stavo lavorando ad una soluzione col vba che a questo punto posto lo stesso.
    Grazie Ges, un saluto, ottime le soluzioni tua e di Rubik (che saluto), io mi ero limitato alla formula, vista la sezione e la richiesta dell'utente che chiedeva una casualità di associazione con i turni abbinando a 30gg, 34 ipotetici lavoratori senza specificare senza doppioni
    Flavio


  15. #12

    L'avatar di Rubik72
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Cosenza
    Età
    45
    Messaggi
    2646
    Versione Office
    Excel 2013
    Likes ricevuti
    971
    Likes dati
    886

    Re: Lista automatica

    Citazione Originariamente Scritto da Rubik72 Visualizza Messaggio
    [...]
    Codice: 
    Sub GeneraTurni()
    Dim Coll As Collection
    Dim Num As Integer
    Dim i As Long
    Dim Impiegati As Range
    Dim NumImpiegati As Long
    
    
    Set Coll = New Collection
    Set Impiegati = Range("m5:m38")
    NumImpiegati = Impiegati.Rows.Count
    
    
    Randomize Timer
    
    
    On Error Resume Next
    Do Until Coll.Count = NumImpiegati
        Num = Rnd * NumImpiegati + 1
        Coll.Add Impiegati(Num), CStr(Impiegati(Num))
    Loop
    On Error GoTo 0
    
    
    For i = 1 To NumImpiegati
        Cells(i + 4, 2) = Coll(i)
    Next
    
    
    Set Impiegati = Nothing
    Set Coll = Nothing
    
    
    End Sub
    piccola modifica alla routine:
    Codice: 
    Sub GeneraTurni()
    Dim Coll As Collection
    Dim Num As Double
    Dim i As Long
    Dim Impiegati As Range
    Dim NumImpiegati As Long
    
    
    Set Coll = New Collection
    Set Impiegati = Range("m5:m38")
    NumImpiegati = Impiegati.Rows.Count
    
    
    Randomize Timer
    
    
    On Error Resume Next
    Do Until Coll.Count = NumImpiegati
        Num = Int(Rnd * NumImpiegati) + 1
        Coll.Add Impiegati(Num), CStr(Impiegati(Num))
    Loop
    On Error GoTo 0
    
    
    For i = 1 To NumImpiegati
        Cells(i + 4, 2) = Coll(i)
    Next
    
    
    Set Impiegati = Nothing
    Set Coll = Nothing
    
    
    End Sub

  16. I seguenti utenti hanno dato un "Like"


  17. #13
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160

    Re: Lista automatica

    Chiedo nuovamente scusa per l'intromissione, ma, visti gli sviluppi della Discussione mi sento di condividere la mia idea iniziale.

    Codice: 
    Option Explicit
    
    Sub Random()
    Dim lNum As Long
    Dim arNum() As Long
    Dim j As Long
    Dim r As Long
    Dim n As Long
        
    Application.ScreenUpdating = False
        lNum = 34
    ReDim arNum(1 To lNum)
        For j = 1 To lNum
            arNum(j) = j
        Next j
            Call Randomize(Time())
        For j = lNum To 1 Step -1
            r = Int((j * Rnd) + 1)
            n = arNum(r)
            arNum(r) = arNum(j)
            arNum(j) = n
            Cells(j + 4, 2) = n
        Next j
            Erase arNum
    Application.ScreenUpdating = True
        Cells(1, 1).Select
    End Sub
    Non sarà molto professionale, ma, tant'è.



    A disposizione.

    Buona serata.

    Giuseppe
    File Allegati File Allegati
    Windows XP Excel 2000 - Windows 10 Excel 2013

  18. I seguenti utenti hanno dato un "Like"


  19. #14
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160

    Re: Lista automatica

    Buona sera, Rubik;
    vorrei ringraziarti del Tuo Apprezzamento.

    Forse, inconsapevolmente mi hai regalato il 100° "Mi piace"

    Ma il Tuo Apprezzamento, per mè, vale molto di più di 100 "Mi piace"



    Grazie di cuore.

    Buona serata.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

Discussioni Simili

  1. Dati da una lista ad una cella
    Di Albertofox nel forum Domande su Excel in generale
    Risposte: 1
    Ultimo Messaggio: 25/02/17, 19:02
  2. Aggiornare una lista
    Di MarioBagus nel forum Domande su Excel VBA e MACRO
    Risposte: 3
    Ultimo Messaggio: 28/12/16, 20:13
  3. [Risolto] Lista clienti2_Bis
    Di fraxrom nel forum Domande su Excel in generale
    Risposte: 2
    Ultimo Messaggio: 21/10/16, 18:28
  4. [Risolto] lista clienti
    Di fraxrom nel forum Domande su Excel in generale
    Risposte: 18
    Ultimo Messaggio: 19/10/16, 10:40
  5. Spostare una lista in un altra lista filtrata
    Di walter.rosi nel forum Domande su Excel in generale
    Risposte: 1
    Ultimo Messaggio: 07/09/16, 11:03

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
  •