Pagina 1 di 2 12 UltimaUltima
Risultati da 1 a 30 di 37

Discussione: Riempimento matrice



  1. #1
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Riempimento matrice

    Buongiorno,

    dovrei riempire una tabella o meglio una matrice con una serie di valori, avendo nelle colonne cosi come nelle righe una lista fissa di Paesi.
    Le celle delle matrice dovrebbero essere riempite pescando i valori da un foglio separato, chiamato "Foglio 1" in cui c'Ŕ una lista di Paesi con i relativi valori.
    Questa lista rappresenta una riga o la colonna della matrice. Quindi ad esempio potrei fare l'estrazione per Cuba ed avere una lista degli scambi in miliardi di Cuba con Spain, Mexico... Successivamente, da una seconda estrazione potrei avere una lista degli scambi in miliardi del Mexico con Cuba, Grecia ecc.
    Si pu˛ anche utilizzare una cella per inserire i nome del Paese e posso anche copiare di volta in volta la lista dei Paesi che devono confluire nella matrice nelle colonne A e B del "Foglio 1" senza problemi.
    La lista dei Paesi estratta pu˛ essere uguale alla lista dei Paesi che costituisce le righe e le colonne della matrice. Tuttavia, potrebbero verificarsi delle situazioni in cui la lista dei Paesi estratti pu˛ essere diversa in quanto potrebbero esserci un numero maggiore di Paesi, un numero inferiore oppure combinazioni di Paesi non presenti nella matrice. In quest'ultimo caso la matrice dovrebbe essere caricata con valore 0 oppure potrebbe essere inserita una cella nel "Foglio 1" con un valore da caricare.

    Da tener presente che (se non Ŕ troppo complicato) la matrice potrebbe essere stata parzialmente caricata manualmente.

    Vi chiedo quindi cortesemente ...
    uno script in modo tale che tutti i valori presenti nel "Foglio 1" vengano ricopiati nelle esatte combinazioni della matrice.
    Immagino che un simile script sfrutti un "cerca.vert" o un "cerca.orizz". Non mi interessa se il riempimento avvenga per orizzontale o verticale.
    Chiaramente il sistema non dovrebbe essere vincolato ai Paesi ma dovrebbe funzionare anche per altri tipi di etichette testuali.
    Infine, potrebbe essere utile creare nel "Foglio 1" una cella in cui inserire un valore ed un tasto che permetta di compilare solo la diagonale della matrice.

    Rimango a vostra disposizione per ulteriori domande e vi ringrazio anticipatamente per l'attenzione
    File Allegati File Allegati

  2. #2

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    LocalitÓ
    Como
    EtÓ
    53
    Messaggi
    7153
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2064
    Likes dati
    1300

    Re: Riempimento matrice

    Ciao,
    non mi Ŕ chiaro...
    Nel Foglio1 ci sono 4 intervalli separati con nomi di cittÓ e valori (che tu chiami pacchetti) sono uguali ... servirebbero per prelevare i dati ma quando dal pacchetto1 e quando dal pacchetto2 ecc?

    Insomma chiedi che i valori presenti nel "Foglio 1" vengano ricopiati nelle esatte combinazioni della matrice, ma parlando con i termini di excel (in quale riga?, quali valori? intervallo? abbinamento nomi e valori?

    Di conseguenza non ho capito neanche questa:"
    Infine, potrebbe essere utile creare nel "Foglio 1" una cella in cui inserire un valore ed un tasto che permetta di compilare solo la diagonale della matrice."

    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se pu˛ sembrare improbabile, non pu˛ che essere quella giusta!

  3. #3
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    ok, il file era sbagliato. Consideri questo in allegato.
    Dimentica il discorso dei pacchetti. Lista unica, in cui posso ricopiare di volta in volta i valori ed i nomi che mi interessano per compilare la matrice.
    L'abbinamento deve essere fatto in base ai nomi. Quindi Cuba - Mexico = 2699 ; Cuba - Spain = 3920

    Poi, per quanto riguarda la diagonale, a volte nella compilazione delle matrici, pu˛ essere utile compilare la diagonale con un valore specifico come ad esempio = 1. Spefico che la diagonale Ŕ la cella "Cuba - Cuba" oppure "Mexico- Mexico"
    Se possibile e non sia troppo complicato, visto che ci siamo, mi piacerebbe che ci sia la possibilitÓ anche di inserire dopo la compilazione una valore specifico sulla diagonale. Una sorta di selezione diagonale immediata anzichŔ manuale. Rimane un discorso eventuale che pu˛ essere visto in un secondo momento.
    Rimango a disposizione
    File Allegati File Allegati

  4. #4

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    LocalitÓ
    Como
    EtÓ
    53
    Messaggi
    7153
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2064
    Likes dati
    1300

    Re: Riempimento matrice

    Ok,
    cominciamo a vedere cosa va bene e cosa no.

    Ti posto il codice per la creazione di una matrice che crea la diagonale.
    Codice: 
    Sub diagonale()
        Dim sh1 As Worksheet, sh2 As Worksheet
            Set sh1 = Sheets("Foglio1")
            Set sh2 = Sheets("MATRICE")
                  uRow = sh1.Cells(Rows.Count, 1).End(xlUp).Row + 1
                  uCol = uRow
                     With sh1
                     .Range(.Cells(1, 1), .Cells(uRow, 1)).Copy
                      sh2.Cells(2, 1).PasteSpecial Paste:=xlValue
                     .Range(.Cells(1, 1), .Cells(uRow, 1)).Copy
                      sh2.Cells(1, 2).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
                False, Transpose:=True
                    End With
                With sh2
                        For y = 2 To uCol
                            For i = 2 To uRow
                                If .Cells(i, 1) = sh1.Cells(i - 1, 1) And .Cells(1, y) = sh1.Cells(i - 1, 1) Then
                                    .Cells(i, y) = sh1.Cells(i - 1, 2)
                                End If
                            Next
                        Next
                    .Cells(1, 1).Select
                End With
            Set sh1 = Nothing
            Set sh2 = Nothing
            Application.CutCopyMode = False
    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!

  5. #5
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Grazie mille.
    La diagonale non Ŕ importante diciamo che Ŕ il secondo step. Poi, nella diagonale dovrei poter impostare un valore fisso, come ad esempio 1.
    La cosa invece pi¨ importante Ŕ il caricamento degli altri valori al di fuori della diagonale.
    La lista dei valori del "foglio 1" sarebbe l'estrazione CUBA su tutti gli altri paesi.
    Tutti quei valori andrebbero caricati in automatico nella prima colonna o riga del foglio "matrice".
    Poi, ci sarÓ un'altra estrazione SPAIN su tutti gli altri Paesi e cosi via. Quei valori mi devono passare in automatico nella giusta combinazione perchŔ manualmene Ŕ veramente time-spending. Alla fine possiamo ragionare sulla diagonale.
    Grazie mille

  6. #6
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Mi sono scordato un'ulteriore indicazione per spisgare meglio il progetto ...
    Nel "foglio 1" la lista andrebbe letta come se ci fosse una "colonna A" nascosta con il nome del Paese per cui faccio l'estrazione dal mio dataset.
    La "colonna B" rappresenta il secondo Paese con cui incrocio la "colonna A". La "colonna C" contiene il valore.
    Il problema Ŕ far caricare la giusta combinazione nella matrice del foglio "matrice"
    Rimango a vostra disposizione per ulteriori chiarimenti o dubbi
    Grazie mille per la gentile collaborazione

  7. #7
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Come da accordi "Ges", invio un nuovo foglio in cui cerco di spiegare meglio cosa vorrei ottenere.

    Iniziamo con il chiarire che la matrice sarebbe una combinazione di due termini o etichette da compilare con i valori riportati nelle colonne A e B del foglio 1.
    In questo caso i termini sono Paesi, cioŔ un Paese A e Paese B. Tuttavia, potrebbero essere anche altro come colori.


    Nel "foglio 1" ho fatto l'esempio di estrazione di Cuba rispetto agli altri Paesi mentre nel "Foglio 2" l'esempio di estrazione Spain rispetto agli altri Paesi.
    Considerali come due casi diversi che tuttavia possono essere sovrapposti in un unico foglio. Ripeto, ho inserito due fogli per farti vedere meglio l'evoluzione ma posso lavorare benissimo con un unico foglio.

    In entrambi i fogli c'Ŕ una cella H1 in cui scrivere di volta in volta il nome del Paese di cui faccio l'estrazione o comunque sia del primo termine.
    Nella colonna A sono riportati tutti i Paesi B ovvero tutti i termini che nella matrice sono combinati con il Paese A.
    Nella colonna B sono riportati tutti i valori che devono essere inseriti negli incroci della matrice o meglio nelle celle della matrice.

    Io, per ogni Paese A, estraggo una lista di Paesi B ed i relativi valori da un altro foglio excel, scrivo il nome del Paese A in H1 e ricopio come valori nelle colonna A e B.
    Vorrei semplicemente che premendo un tasto, tutti quei valori venissero inseriti automaticamente nella tabella presente nel foglio "Matrice" negli esatti incroci.
    Considera che la lista dei Paesi B Ŕ variabile ad esempio 4 o 15 Paesi e solo per le combinazione ci dovrÓ essere la compilazione della matrice. Da tener presente inoltre che possono esserci dei Paesi della lista delle colonne A e B che non sono presenti nella matrice. In questo caso la matrice dovrebbe riportare il valore 0. Ad esempio nella matrice il penultimo Paese Ŕ l'Italia. Cuba scambia con l'Italia 1082 milioni. Tuttavia, nel secondo caso, Spain non scambia con Italy ma con Unghery. Quindi nella matrice, nell'incrocio Spain - Italy Ŕ riportato il valore 0.
    La compilazione pu˛ avvenire solo nel quadrante in basso alla diagonale, in quello superiore alla diaginale oppure in entrambi. Sarebbe meglio in entrambi, ma questo non mi interessa. Tuttavia, devono essere trasferiti almeno in uno dei tre.

    Per quanto riguarda la diagonale, che rimane un discorso secondario, vorrei avere la possibilitÓ dopo la compilazione di sovrascriver un valore dato, fisso inserito nella cella H2.

    Rimango a vostra disposizione per ulteriori spiegazioni
    File Allegati File Allegati

  8. #8

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    LocalitÓ
    Como
    EtÓ
    53
    Messaggi
    7153
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2064
    Likes dati
    1300

    Re: Riempimento matrice

    Ciao,
    oggi ho visto il tuo file, mi sono limitato a replicare il tuo esempio ma non ho capito ancora bene, ci sono elementi non chiari.

    Il tuo esempio mette nella matrice solo i nomi (Paesi) del primo foglio .. e quelli del secondo foglio che funzione hanno?
    Allo stesso modo i dati numerici: la prima riga e colonna usano quelli del primo foglio mentre la riga e la colonna successivi usano quelli del secondo foglio

    Intanto ti posto il codice che replica il tuo esempio, ma ne sconosco i criteri.

    Tu parli di "estrarre i paesi" ma che vuol dire in termini del linguaggio excel?

    Codice: 
    Sub matrice()
    Dim sh1 As Worksheet, sh2 As Worksheet, sh3 As Worksheet
        Set sh1 = Worksheets("Foglio1")
        Set sh2 = Worksheets("Foglio2")
        Set sh3 = Worksheets("MATRICE")
        Application.ScreenUpdating = False
        sh3.Range("A1:M15") = ""
            uRiga = sh1.Range("A" & Rows.Count).End(xlUp).Row
            uRiga2 = sh2.Range("A" & Rows.Count).End(xlUp).Row
            sh1.Range("A1:B" & uRiga).Copy
            sh3.Range("A2").PasteSpecial Paste:=xlValues
            sh3.Range("B1").PasteSpecial Paste:=xlValues, Transpose:=True
                With sh3
                For y = 2 To uRiga + 1
                    For x = 2 To uRiga2 + 1
                        If .Cells(y, 1) = .Cells(1, x) Then
                            .Cells(y, 2) = sh1.Cells(y - 1, 2)
                            .Cells(y, 3) = sh2.Cells(y - 1, 2)
                            .Cells(3, x) = sh2.Cells(y - 1, 2)
                            .Cells(y, x) = 1
                        End If
                    Next
                Next
                .Cells(2, x) = sh1.Cells(y, 2)
                End With
        Application.ScreenUpdating = True
        Application.CutCopyMode = False
        Set sh1 = Nothing
        Set sh2 = Nothing
        Set sh3 = 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!

  9. #9
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Grazie mille per l'impegno Ges ma ancora non ci siamo.
    Possiamo fare di meglio. Il foglio 2 aveva il solo compito di mostrarti un secondo eventuale inserimento niente di pi¨.
    Se ti avesse confuso eliminiamo sia il discorso della diagonale che il foglio 2.

    Ti spiego meglio. Io devo estrarre da un programma il valore degli scambi commerciali fra Paesi. Ipotizziamo 8 Paesi per semplicitÓ.
    Quindi per ogni Paese estraggo una lista in cui ho quanto scambia quel paese con un altro Paese. Complessivamente dovr˛ fare 8 estrazioni, una per ogni Paese. Ad esempio inizio ad estrarre da Cuba che scambia con la Spagna 3920€, con UK 896€, con Italia, 1082€.
    Poi estrarr˛ Mexico che a sua volta scambierÓ con Cuba, con la Spagna, con UK, ecc. Attenzione perchŔ le liste possono contenere delle combinazioni che non sono riportabili nella matrice. Ad esempio Cuba potrebbe scambiare con altri 7 paesi mentre la Spagna potrebbe scambiare con 9 paesi. In questo caso dovrÓ essere riportato nella matrice solo il valore dei paesi considerati nella matrice iniziale e mettere zero come valore di scambio per le combinazioni che non esistono.

    Considera inoltre, che il programma tuttavia non Ŕ furbo e per ogni Paese che estraggo mi riporta anche il valore interno. Quindi mi restituisce Cuba su Cuba 36855€.
    Bene. Per poter analizzare bene questi scambi con determinati software ho bisogno di costruire la matrice che in questo caso sarÓ costituita da 8 righe e 8 colonne ma potenzialmente potrebbero essere anche di pi¨. Chiaramente nelle celle vengono riportati i valori degli scambi, in base alle varie combinazioni di Paesi.
    Quindi lo script dovrebbe....una volta che ho ripetuto l'estrazione per ogni Paese, abbinarmi automaticamente i Paesi e mettere il valore di scambio nella matrice.
    Quindi prendiamo il foglio 1. La casella H1 dice che il Paese estratto Ŕ Cuba. In A e B sono riportati i Paesi con cui vengono scambiate le merci ed i relativi valori.
    Premendo il tasto compila, questi valori devono essere collocati nelle rispettive posizioni. Quindi se ad esempio dopo aver estratto Cuba estraggo Brazil nell'altro programma ottenendo una lista di Paesi con cui il Brasile scambia merci, vorrei semplicemente ricopiare questa nuova lista nelle colonne A e B del foglio 1 scrivere Brasil in H1 perchŔ Ŕ il paese estratto (di riferimento) e far in modo che una volta premuto il tasto questi valori siano riportati nelle esatte celle della matrice, cioŔ del Brazil ovvero la colonna E o riga 5.
    Nel tuo script se cambio il valore in H1 scrivendo ad esempio Italy, i valori vengono ricopiati sempre nella colonna di Cuba.
    Invece andrebbero ricopiati nella riga o colonna della matrice corrispondenti l'Italia rispettando la combinazione dei Paesi di scambio.
    Sono sempre a tua disposizione per chiarimenti.
    Grazie per l'impegno e l'aiuto.

  10. #10
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    Ancora non si capisce... almeno per quanto mi riguarda...
    Servono esempi pratici esplicativi

  11. #11
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Grazie mille anche a te Cuc¨

    Ho fatto un nuovo foglio dove ho inseirto 8 fogli con le liste dei Paesi che potenzialmente ho estratto dal mio database e un foglio della matrice completo.
    Considerate che io non voglio lavorare con 8 foglio ma bastarebbe un foglio1 in cui ricopiare di volta in volta la lista dei Paesi (ad esempio nelle colonne A e B) con i relativi valori e una casella in cui riportare il Paese estratto. Tuttavia accetto anche soluzioni con pi¨ fogli che tuttavia sono di un numero variabile.
    Ci˛ che voglio Ŕ non posizionare a mano di volta in volta i valori bensý dovrebbe essere una macro che automaticamente colloca i valori in corrispondeze delle esatte combinazioni di Paesi o altre etichette.

    Attenzione al foglio 4 in cui ho costruito una soluzione in cui il Brasile non ha rapporti con UK bensi con Nigeria e Canada. dato che questi Peasi non sono inseriti fra le colonne e le righe della matrice, nelle celle dell'incrocio "Brasil vs UK" viene riportato il valore 0.

    Vi ringrazio ancora una volta per l'aiuto e sono a vostro disposizione per qualsiasi informazione o dubbio.
    File Allegati File Allegati

  12. #12
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    PerchŔ nella matrice NON sono presenti "Nigeria e Canada" ???

  13. #13
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    PerchŔ i Paesi su cui voglio fare l'analisi sono solo quelli presenti nella matrice, gli altri.
    Nigeria e Canada sono un eccezione del Brasile.
    In pratica, gli altri Paesi non intendono avere scambi ipoteticamente con queste nazioni.
    Infatti Brasile & UK Ŕ a 0. Ma potenzialmente potrebbe esserci altri incroci a 0.
    Questo esempio mi Ŕ servito per farvi capire che la lista dei Paesi da collocare pu˛ essere variabile, quindi a volte pi¨ lunga o meno di 8.
    Penso che molti problemi si risolvano con il "Cerca"
    Altro aiuto ?

  14. #14
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Cosa molto importante !
    La lista dei Paesi da inserire nella matrice la posso fissare io senza problemi a priori.
    Solo i valori numerici degli incroci devono essere compilati automaticamente.
    I nomi delle etichette li scrivo io manualmente a seconda dei Paesi che voglio inglobare nell'analisi di volta in volta.

  15. #15
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    nel foglio8 pero Uk - Brasile restituisce il valore 24 ma nella matrice in cella I5 abbiamo il valore 0 .... PerchŔ?

  16. #16
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    C'Ŕ un piccolo errore nel foglio 8 ma il discorso Ŕ semplice ...
    Dal foglio 4 emerge che il Brasile non ha relazioni con UK.
    Questo valore sarÓ deve essere quindi 0 e coerente in tutti i fogli.
    Forse, basterebbe un cerca.vert doppio nel senso che non cerca un solo valore ma una coppia di valori che corrispondono alle colonne e righe della matrice.
    Sono qui se serve altro aiuto.
    Grazie mille per tutto quello che state facendo

  17. #17

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    LocalitÓ
    Como
    EtÓ
    53
    Messaggi
    7153
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2064
    Likes dati
    1300

    Re: Riempimento matrice

    Citazione Originariamente Scritto da Cuc¨^_^ Visualizza Messaggio
    Ancora non si capisce... almeno per quanto mi riguarda...
    Servono esempi pratici esplicativi
    Da un lato Ŕ un sollievo sentire che anche qualcun altro non ha capito ....
    Mi sento un po' stupido .. nonostante l'impegno di Master a fornire dettagliate spiegazioni trovo ancora difficoltÓ ... se posso suggerire un consiglio a Master Ŕ di non parlare di "estrazioni", "scambio merci" ecc. ma di fare riferimento solo al foglio excel.
    Riassumo cosa ho capito.

    1) I paesi nel foglio 1 A1:A8 vanno posizionati nel foglio "Matrice" nell'intervallo A2:A8 e B1:I1
    2) I valori in B1:B8 del foglio1 vanno rispettivamente messi nel foglio "Matrice" in B2:B9 e B2:I2 in B2 avremo la coincidenza dei valori e quindi bisogna mettere 1
    .... poi gran confusione.
    Master dice "quando estraggo" ... ma in termini di excel continuo a non capire cosa voglia dire? Dovresti dire "quando metto/tolgo questo dato nel foglio1 o foglio3 ...
    In sostanza copiare dei dati in base a dei criteri dal foglio1 a un altro foglio col vba Ŕ un gioco da ragazzi ... ma se non Ŕ chiaro il criterio ci˛ non sarÓ mai possibile.
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se pu˛ sembrare improbabile, non pu˛ che essere quella giusta!

  18. #18
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Grazie mille anche a te Ges.
    Scusatemi per l'incomprensione!
    Penso che il mio non sia un linguaggio tecnico e molti problemi siano dovuti alle mediazione dello strumento.
    Faccia a faccia ci saremo capiti senz'altro meglio.
    Comunque, non mi do per vinto e continuo ad essre a vostra disposizione.

    Il termine estrazione lo uso semplicemente per indicare che prendo i dati da un'altra parte. Tutto qua.
    Cancellatelo pure, perchŔ ai fini di excel non serve.

    Il criterio Ŕ semplice... la coincidenza delle etichette. In pratica, dovrebbe essere ricopiato il valore numerico nella matrice
    quando il nome del Paese scritto in H1 del "foglio 1" e il nome del Paese della lista nella colonna A coincidono.
    Il criterio alla base del trasferimento dei valori Ŕ la coincidenza dei nomi.

  19. #19
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    Vediamo se almeno ci avviciniamo...
    Codice: 
    Option Explicit
    
    Sub Esporta_Dati()
    Dim Stato As String, StatoM As String
    Dim Ur As Long, MRow As Long
    Dim Iur As Long, Ucol As Long
    Dim CelM As Range, CStatoM As Range, RMatr As Range
    
    
    Application.ScreenUpdating = False
    
    
    Stato = Sheets("Foglio1").Cells(1, 1)
    Ur = Sheets("Foglio1").Range("A" & Rows.Count).End(xlUp).Row
    Ucol = Sheets("MATRICE").Cells(1, Columns.Count).End(xlToLeft).Column
    Set RMatr = Sheets("MATRICE").Range(Sheets("MATRICE").Cells(1, 2), Sheets("MATRICE").Cells(1, Ucol))
    Set CelM = Sheets("MATRICE").Range("A:A").Find(Stato, LookIn:=xlValues, lookat:=xlWhole)
        
        If Not CelM Is Nothing Then
            MRow = CelM.Row - 1
            Range(Cells(MRow, 2), Cells(MRow, Ucol)).ClearContents
                
                For Iur = 1 To Ur
                    StatoM = Cells(Iur, 1)
                        Set CStatoM = RMatr.Find(StatoM, LookIn:=xlValues, lookat:=xlWhole)
                            
                            If Not CStatoM Is Nothing Then
                                CStatoM.Offset(MRow, 0).Value = Cells(Iur, 2)
                            End If
                            
                Next Iur
        Else
        
            MsgBox Stato & " NON Ŕ presente nel foglio MATRICE- Esportazione dati non riuscita", vbCritical
        
        End If
    
    
    Application.ScreenUpdating = True
    MsgBox "Lavoro Terminato"
    
    
    End Sub
    File Allegati File Allegati

  20. #20
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Ciao Cuc¨.
    Mi sembra un ottimo punto di partenza, ti faccio i mieie complimenti e ti ringrazio per l'aiuto e la disponibilitÓ

    Ti segnalo tuttavia alcune cose.

    1. Ho provato a modificare i valori delle colonna B e dopo una prima esportazione la macro non ha caricato pi¨ i dati modificati
    2. Ricorda che per completare la matrice devo esportare pi¨ liste. Queste liste potrebbero essere su pi¨ foglio oppure ricopiate nello stesso "Foglio1"
    3. Per poter fare un foglio di compilazione generica di una "matrice" bisogna tener presente che la dimensione dellla matrice potrebbe essere variabile (8x8; 25x25; 50x50) ed anche i nomi delle etichette potrebbero cambiare. Ad esempio anzichŔ i Paesi potrei avere le cittÓ oppurre un altro valore non numerico.
    Chiaramente la compilazione dei campi relativi alle intestazioni di colonna e riga saranno inseriti manualmente.

  21. #21
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    Non mi risulta...

    In A1 inserisci lo stato di riferimento
    In B1 il suo valore
    e da A2 in giu gli stati con B2 in giu i valori
    poi premi il pulsante e dovrebbe funzionare tutto...

  22. #22
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Ho ricontrollato. Il problema Ŕ sul Brasile.
    Dopo aver premuto la prima volta il tasto "esporta", inserisco nuovi valori nella casella del Brasile e ripremo esporta.
    Il valore del Brasile si cancella nel foglio 1 cosi come nel foglio matrice

  23. #23
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    Ok
    riprova il file
    i A1 metti lo stato di riferimento
    in B1 il relativo valore

    poi da A2 in gi¨ tutti gli stati che vuoi e da B2 in gi¨ i relativi valori

    Nel foglio matrice seguendo lo schema costruisciti la matrice con tutti gli stati che ritieni opportuno

    premi il pulsant ogni volta che modifichi i valori del foglio 1 e i dati dovrebbero finirti nel foglio matrice

    fai le prove e fammi sapere...
    File Allegati File Allegati

  24. #24
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Mi sembra che ci siamo. Mitico !!!

    Alcune domande...
    Se volessi la matrice:
    - nelle etichette (lavorando ad esempio sulle cittÓ) basta che modifico i nomi nella lista del "foglio 1" e le intestazioni di righe e colonne ?
    - nella dimensione, (lavorando ad esempio con 50 cittÓ o nomi di autori) basta che modifico le intestazioni di righe e colonne della matrice ?

    Infine, potresti inserire un tasto che mi permette di selezionare solo le celle disposte sulla diagonale di una matrice di qualsiasi dimensione ?
    Ti spiego. Alcune analisi hanno bisogno di impostare il valore della diagonale a 1, altre con 0, altre con la media, ecc.

  25. #25
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    Codice: 
    Se volessi la matrice: 
    - nelle etichette (lavorando ad esempio sulle cittÓ) basta che modifico i nomi nella lista del "foglio 1" e le intestazioni di righe e colonne ?
    Risp: Si (almeno se ho interpretato bene la tua domanda)

    Codice: 
    nella dimensione, (lavorando ad esempio con 50 cittÓ o nomi di autori) basta che modifico le intestazioni di righe e colonne della matrice ? 
    Risp: Si, puoi inserire tutte le cittÓ che ti pare...


    Codice: 
    Infine, potresti inserire un tasto che mi permette di selezionare solo le celle disposte sulla diagonale di una matrice di qualsiasi dimensione ?
    Risp: Qui ci risiamo... Non capisco... Per selezionare cosa Intendi? Fare una selezione delle celle in diagonale o pi¨ semplicemente evidenziarle ad esempio colorandole di un determinato colore?

  26. #26
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Grazie per l'impegno e la disponibilitÓ ad una grande progetto.

    Ci sono dei limiti nel numero di celle del foglio 1 e nelle dimensione della matrice ?

    Ad esempio, potrei inserire una lista di 200 Paesi nelle colonne A e B del foglio 1 ed esportare i valori in una una matrice 176x176

    Infine, per quanto riguarda il punto tre.
    Dovrei fare semplicemente una selezione delle celle in diagonale.
    Mi spiego. Potrei avere la necessitÓ di scrivere tutti 1 oppure un altro valore numerico come la media sulla diagonale.
    AnzichŔ scorrere il foglio elettronico in diagonale, seleziondo ad una ad una le celle sulla diagonale, vorrei un tasto mi permettesse di selezionare le celle delle diagonale (in funzione delle dimensione delle matrice) cosichŔ prendo INVIO+CRTL+MAISCU il valore venga trascritto in tutte celle.
    Grazie ancora per l'impegno e la disponibilitÓ ad una grande progetto.

  27. #27
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    si per entrambe le domande

    Vedi file
    File Allegati File Allegati

  28. #28
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    SENZA PAROLE

    MITICO !!!!!!


    Per la diagonale ?

  29. #29
    L'avatar di Cuc¨^_^
    Clicca e Apri
    Data Registrazione
    Jun 2016
    LocalitÓ
    TrentoGallipoliTaranto
    EtÓ
    46
    Messaggi
    311
    Versione Office
    2010
    Likes ricevuti
    57
    Likes dati
    18

    Re: Riempimento matrice

    Citazione Originariamente Scritto da Master Visualizza Messaggio
    SENZA PAROLE

    MITICO !!!!!!


    Per la diagonale ?
    vedi file sopra appena allegato

  30. #30
    L'avatar di Master
    Clicca e Apri
    Data Registrazione
    Jan 2016
    LocalitÓ
    Macerata
    EtÓ
    35
    Messaggi
    74
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    1

    Re: Riempimento matrice

    Mi stanno venendo le lacrime !!!!
    Senza parole...
    GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE MILLE

Discussioni Simili

  1. Riempimento area con intervalli di celle prefissati...
    Di MastroGi˛ nel forum Domande su Excel VBA e MACRO
    Risposte: 34
    Ultimo Messaggio: 20/03/17, 20:51
  2. [Risolto] Riempimento casuale senza ripetizione
    Di alfrimpa nel forum Domande su Excel VBA e MACRO
    Risposte: 8
    Ultimo Messaggio: 03/03/17, 11:22
  3. Inserimento riga al riempimento di una cella
    Di lizz1183 nel forum Domande su Excel VBA e MACRO
    Risposte: 5
    Ultimo Messaggio: 24/11/16, 16:11
  4. Riempimento di informazioni in una listbox
    Di giovanni.mastellone nel forum Domande su Excel VBA e MACRO
    Risposte: 35
    Ultimo Messaggio: 24/10/15, 15:58
  5. riempimento matrice attraverso macro
    Di iridia88 nel forum Domande su Excel VBA e MACRO
    Risposte: 11
    Ultimo Messaggio: 21/10/15, 17:05

Tag per Questa Discussione

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
  •