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

Discussione: Primo test di agosto estrarre una lista unica da una stringa di testo



  1. #1
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4920
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1127

    Primo test di agosto estrarre una lista unica da una stringa di testo

    Come potete vedere dall'immagine servirebbe una lista unica (senza duplicati) che viene estratta da una stringa

    A
    B
    C
    D
    E
    F
    G
    H
    1
    Situazione iniziale
    situazione finale
    2
    AA BB CC 22 BB AA CC AA BB CC
    22


    PS Prego astenersi per 24 ore Guru e Moderatori

  2. #2
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    LocalitÓ
    Barcellona P.G.
    EtÓ
    55
    Messaggi
    1689
    Versione Office
    2010 PC
    Likes ricevuti
    899
    Likes dati
    185

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    sý, ma sono a 156 caratteri...... troppo lunga
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed Ŕ un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  3. #3
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4920
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1127

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    sý, ma sono a 161 caratteri...... troppo lunga
    Prima di domani nn rispondere!!!
    e questa Ŕ tosta, io come al solito cercher˛ di farla con il FREQUENZA ma poi ogniuno Ŕ liberissimo di fare come meglio crede... comunque come parametro per valure una formula non'Ŕ solo la lunghezza (perchŔ si pu˛ barare) ma anche la velocita per cui se esci con un 1/CONTA.SE.. avrai tempi difficili

  4. #4
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4920
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1127

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    sý, ma sono a 156 caratteri...... troppo lunga
    io sono arrivato a 121 hahahah

    EDIT
    Dimenticavo, NO VBA

  5. #5

    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    Prima di domani nn rispondere!!!
    ....
    Miii ' a lupara pigghiau""
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se pu˛ sembrare improbabile, non pu˛ che essere quella giusta!

  6. I seguenti 4 utenti hanno dato un "Like" a ges per questo post:


  7. #6
    L'avatar di Catwoman
    Clicca e Apri
    Data Registrazione
    Aug 2016
    LocalitÓ
    Tenerife
    Messaggi
    762
    Versione Office
    2013
    Likes ricevuti
    131
    Likes dati
    705

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Visto che sono tornata come dice Ninai pi¨ esuberante che mai e in pompa magna...
    Ci provo io!!!

    Dunque...

    potrei sbagliarmi ma una soluzione potrebbe essere, mettendo in B2:

    =SE.ERRORE(INDICE(STRINGA.ESTRAI($A$2;1+3*(RIF.RIGA(1:20)-1);2);CONFRONTA(0;INDICE(CONTA.SE($A$2:A2;STRINGA.ESTRAI($A$2;1+3*(RIF.RIGA(1:20)-1);2)););0));"")
    da trascinare verso destra

    Giusto?

  8. I seguenti 2 utenti hanno dato un "Like" a Catwoman per questo post:


  9. #7
    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Senza VBA?
    Windows XP Excel 2000 - Windows 10 Excel 2013

  10. #8
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4920
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1127

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Dillina Visualizza Messaggio
    Visto che sono tornata come dice Ninai pi¨ esuberante che mai e in pompa magna...
    Ci provo io!!!

    Dunque...

    potrei sbagliarmi ma una soluzione potrebbe essere, mettendo in B2:

    =SE.ERRORE(INDICE(STRINGA.ESTRAI($A$2;1+3*(RIF.RIGA(1:20)-1);2);CONFRONTA(0;INDICE(CONTA.SE($A$2:A2;STRINGA.ESTRAI($A$2;1+3*(RIF.RIGA(1:20)-1);2)););0));"")
    da trascinare verso destra

    Giusto?
    Vietato barare
    Appena becco ninai lo banno subito

  11. #9
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    LocalitÓ
    Barcellona P.G.
    EtÓ
    55
    Messaggi
    1689
    Versione Office
    2010 PC
    Likes ricevuti
    899
    Likes dati
    185

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    ed io che centro????
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed Ŕ un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  12. #10
    L'avatar di Catwoman
    Clicca e Apri
    Data Registrazione
    Aug 2016
    LocalitÓ
    Tenerife
    Messaggi
    762
    Versione Office
    2013
    Likes ricevuti
    131
    Likes dati
    705

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    Vietato barare
    Appena becco ninai lo banno subito

    Piuttosto banna me!

  13. #11
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4920
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1127

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Ciao Giuseppe

    Si ma se la situazione cambia il tuo metodo non funziona

    esempio:

    A
    B
    C
    D
    E
    F
    G
    H
    1
    Situazione iniziale
    situazione finale
    2
    BB CC ZZ 22 BB CC CC 24 BB CC ZZ 22 24

  14. #12
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4920
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1127

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    ed io che centro????
    ok ninai se tu non centri niente metti una alternativa alla formula di Dillina del post #6
    Si scherza ovviamnete...

    @Dillina non posso bannare Guru e masquottes

  15. #13
    L'avatar di Catwoman
    Clicca e Apri
    Data Registrazione
    Aug 2016
    LocalitÓ
    Tenerife
    Messaggi
    762
    Versione Office
    2013
    Likes ricevuti
    131
    Likes dati
    705

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    ok ninai se tu non centri niente metti una alternativa alla formula di Dillina del post #6
    Si scherza ovviamnete...
    Il gioco si fa interessante!!
    Ninai ora sono curiosa....


    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    @Dillina non posso bannare Guru e masquottes
    Sono Mascotte e non lo sapevo

  16. #14
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    LocalitÓ
    Barcellona P.G.
    EtÓ
    55
    Messaggi
    1689
    Versione Office
    2010 PC
    Likes ricevuti
    899
    Likes dati
    185

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    ok ninai se tu non centri niente metti una alternativa alla formula di Dillina del post #6
    una simile potrebbe essere:
    =SE.ERRORE(INDICE(STRINGA.ESTRAI($A$2;3*RIF.RIGA(A1:A20)-2;2);CONFRONTA(0;INDICE(CONTA.SE($A$2:A2;STRINGA.ESTRAI($A$2;1+3*(RIF.RIGA(A1:A20)-1);2)););0));"")


    ebbene sý, sto continuando a barare

    ma ve ne saranno molte altre, al momento non posso cimentarmi
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed Ŕ un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  17. I seguenti 2 utenti hanno dato un "Like" a ninai per questo post:


  18. #15

    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    Ciao Giuseppe

    Si ma se la situazione cambia il tuo metodo non funziona

    esempio:

    A
    B
    C
    D
    E
    F
    G
    H
    1
    Situazione iniziale
    situazione finale
    2
    BB CC ZZ 22 BB CC CC 24 BB CC ZZ 22 24
    Ciao Gerardo,
    ma la formula non l'ha scritta Dilly ???

    PerchŔ dici che non funziona con questa variante: BB CC ZZ 22 BB CC CC 24 ???

    @Dilly

    complimenti

    o c'Ŕ lo zampino di "qualcuno"?

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

  19. #16
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4920
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1127

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    Ciao Gerardo,
    PerchŔ dici che non funziona con questa variante: BB CC ZZ 22 BB CC CC 24 ???
    @Tore era riferito a Giuseppe NM che consigliava un metodo anzichŔ una formula, che effettivamente funzionava per come era disposta la stringa inizialmente

    Comunque visto che sono piovute le prime formule questo 3D non'Ŕ piu bloccato per i guru e mod...
    avanti tuttaaa


    PS a breve poster˛ la mia solution (molto Breve)

  20. #17
    L'avatar di Catwoman
    Clicca e Apri
    Data Registrazione
    Aug 2016
    LocalitÓ
    Tenerife
    Messaggi
    762
    Versione Office
    2013
    Likes ricevuti
    131
    Likes dati
    705

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    Ciao Gerardo,
    ma la formula non l'ha scritta Dilly ???

    PerchŔ dici che non funziona con questa variante: BB CC ZZ 22 BB CC CC 24 ???

    @Dilly

    complimenti

    o c'Ŕ lo zampino di "qualcuno"?

    Io ho scritto:
    Dunque...
    (e anche)
    Giusto?

    Significa barare?

    Comunque mi affascina...sto seguendo attentamente

  21. #18
    L'avatar di Gerardo ZuccalÓ
    Clicca e Apri
    Data Registrazione
    May 2015
    LocalitÓ
    Milano, Italy
    EtÓ
    49
    Messaggi
    4920
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1127

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Molto pi¨ corta!! 134 caratteri

    In B2 metti questa formula matriciale

    =SE.ERRORE(INDICE(Lista;PICCOLO(SE(FREQUENZA(SE(Lista<>"";CONFRONTA(Lista;Lista;0));MatrNum)>0;MatrNum);COLONNE($B2:B2)));"")


    con la definizione dei nomi ho creato (verde)
    =Lista cheŔ riferito alla formula:
    =ANNULLA.SPAZI(STRINGA.ESTRAI(SOSTITUISCI(" "&Foglio1!$A3;" ";RIPETI(" ";50));(RIF.RIGA(Foglio1!$A$2:$A$15)-RIF.RIGA(Foglio1!$A$2)+1)*50;50))

    con la definizione dei nomi ho creato (rosso)
    =MatrNum
    Ŕ riferito alla formula:
    =RIF.RIGA(Foglio1!$A$2:$A$15)-RIF.RIGA(Foglio1!$A$2)+1



  22. I seguenti 2 utenti hanno dato un "Like" a Gerardo ZuccalÓ per questo post:


  23. #19
    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    Ciao Giuseppe
    Si ma se la situazione cambia il tuo metodo non funziona
    Buona sera, Gerardo;
    premesso che mi era sfuggita la condizione "senza duplicati", consapevole della svista, ho dovuto "salvarmi" con laiuto di VBA

    Codice: 
    Option Explicit
    
    Sub Macro_farlocca()
    Dim Cln As Long
    Application.ScreenUpdating = False
        
        Range("A2").Copy Range("B2")
        Cells(2, 2).TextToColumns Destination:=Range("B2"), DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
            Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
            :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
            Array(7, 1)), TrailingMinusNumbers:=True
        Cln = Cells(2, Columns.Count).End(xlToLeft).Column
            Range(Cells(2, 2), Cells(2, Cln)).Copy
        Range("B4").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
        ActiveSheet.Range("$B$4:$B$200").RemoveDuplicates Columns:=1, Header:=xlNo
        Range("B4:B200").Copy
        Range("B2").Select
        Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
        Range("B4:B100").ClearContents
        Application.CutCopyMode = False
    Application.ScreenUpdating = True
        Cells(2, 2).Select
    End Sub
    Codice da dimenticare, ma, vista la necessitÓ ...

    Giuseppe potrÓ sbagliare, VBA ... no!

    Unico, ma proprio unico, vantaggio, la Stringa in Cella "A2", non ha problemi di numero di caratteri se non quelli imposti da Excel.




    A disposizione.

    Buona serata.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

  24. I seguenti utenti hanno dato un "Like"


  25. #20

    L'avatar di alfrimpa
    Clicca e Apri
    Data Registrazione
    Dec 2015
    LocalitÓ
    Napoli
    EtÓ
    64
    Messaggi
    6821
    Versione Office
    2013
    Likes ricevuti
    721
    Likes dati
    166

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Non sono SuperMod nÚ Guru nÚ Esperto quindi non dovrei avere vincoli temporali e visto che il vba non Ŕ stato escluso provo a postare anche la mia.

    Attendo rampogne dai maghi del VBA

    Codice: 
    Sub SuddividiStringhe()
     Dim CL As Range, Intervallo As Range, Elenco As New Collection
     Dim Valori As Variant
     Dim I As Integer
     Dim endcol As Long
     Worksheets("Foglio1").Select
     If ActiveCell.Value = "" Then
     MsgBox "Occorre selezionare una cella con i Valori"
     Else
     Application.ScreenUpdating = False
     Application.DisplayAlerts = False
     Selection.TextToColumns Destination:=Range("B1"), DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
            Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
            :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
            Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1)), _
            TrailingMinusNumbers:=True
     endcol = Cells(1, Cells.Columns.Count).End(xlToLeft).Column
     Set Intervallo = Range(Cells(1, 2), Cells(1, endcol)) 'Range("B1:H1")
     On Error Resume Next
     For Each CL In Intervallo
        Elenco.Add CL.Value, CStr(CL.Value)
     Next
     On Error GoTo 0
     With Worksheets("Foglio1")
     I = 2
     Intervallo.ClearContents
            For Each Valori In Elenco
                .Cells(1, I).Value = Valori
            I = I + 1
        Next
     End With
     End If
     Application.ScreenUpdating = False
     Application.DisplayAlerts = True
     End Sub
    Alfredo

    P.S. Giuseppe mi hai fregato sul tempo (un caro saluto)

  26. #21

    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    Molto pi¨ corta!! 134 caratteri

    In B2 metti questa formula matriciale

    =SE.ERRORE(INDICE(Lista;PICCOLO(SE(FREQUENZA(SE(Lista<>"";CONFRONTA(Lista;Lista;0));MatrNum)>0;MatrNum);COLONNE($B2:B2)));"")


    con la definizione dei nomi ho creato (verde)
    =Lista cheŔ riferito alla formula:
    =ANNULLA.SPAZI(STRINGA.ESTRAI(SOSTITUISCI(" "&Foglio1!$A3;" ";RIPETI(" ";50));(RIF.RIGA(Foglio1!$A$2:$A$15)-RIF.RIGA(Foglio1!$A$2)+1)*50;50))

    con la definizione dei nomi ho creato (rosso)
    =MatrNum
    Ŕ riferito alla formula:
    =RIF.RIGA(Foglio1!$A$2:$A$15)-RIF.RIGA(Foglio1!$A$2)+1


    mmmmmhhh...
    mi sa che hai barato

    Ok, allora bariamo anche noi

    Bisogna prima di tutto attivare il "calcolo iterativo" (per permettere un riferimento circolare):
    Opzioni --> Formule --> spuntare la voce "Attiva calcolo iterativo"

    dopo si pu˛ scrivere nella cella B2 (da copiare poi a destra):

    =SE(CONTA.SE($A2:A2;B2)>0;"";STRINGA.ESTRAI($A2;TROVA(STRINGA.ESTRAI($A2;3*(RIF.COLONNA(A1)-1)+1;2);$A2);2))


    una volta confermata, premere F9 per "aggiustare" il risultato.

    Dovrebbero essere 106 caratteri (senza contare il segno uguale "=" ).


    @Alfredo & GiuseppeMN
    mi sa che per oggi ho finito i "LIKE"...
    comunque, "mi piace" la vostra solution

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

  27. I seguenti 2 utenti hanno dato un "Like" a cromagno per questo post:


  28. #22

    L'avatar di alfrimpa
    Clicca e Apri
    Data Registrazione
    Dec 2015
    LocalitÓ
    Napoli
    EtÓ
    64
    Messaggi
    6821
    Versione Office
    2013
    Likes ricevuti
    721
    Likes dati
    166

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da cromagno Visualizza Messaggio

    @Alfredo & GiuseppeMN
    mi sa che per oggi ho finito i "LIKE"...
    comunque, "mi piace" la vostra solution
    PerchÚ domani non ce lo puoi dare?

    Alfredo

  29. #23
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    LocalitÓ
    Barcellona P.G.
    EtÓ
    55
    Messaggi
    1689
    Versione Office
    2010 PC
    Likes ricevuti
    899
    Likes dati
    185

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da Gerardo ZuccalÓ Visualizza Messaggio
    Molto pi¨ corta!! 134 caratteri

    In B2 metti questa formula matriciale

    =SE.ERRORE(INDICE(Lista;PICCOLO(SE(FREQUENZA(SE(Lista<>"";CONFRONTA(Lista;Lista;0));MatrNum)>0;MatrNum);COLONNE($B2:B2)));"")


    con la definizione dei nomi ho creato (verde)
    =Lista cheŔ riferito alla formula:
    =ANNULLA.SPAZI(STRINGA.ESTRAI(SOSTITUISCI(" "&Foglio1!$A3;" ";RIPETI(" ";50));(RIF.RIGA(Foglio1!$A$2:$A$15)-RIF.RIGA(Foglio1!$A$2)+1)*50;50))

    con la definizione dei nomi ho creato (rosso)
    =MatrNum
    Ŕ riferito alla formula:
    =RIF.RIGA(Foglio1!$A$2:$A$15)-RIF.RIGA(Foglio1!$A$2)+1


    senti chi parla di barare!!!
    la tua sono:
    125+141+54=320 caratteri


    al momento, la formula pi¨ lineare mi sembra quella di Dillina
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed Ŕ un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  30. I seguenti utenti hanno dato un "Like"


  31. #24
    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Buona sera, Cromagno;
    grazie della Tua Attenzione.
    In realtÓ a ben vedere il Codice che ho proposto necessita di due modifiche.

    Quella indicata in "rosso", direi che piuttosto importante, evita che il messaggio "Sono giÓ presenti dati. Sostituirli?", venga proposto; il messaggio dovrebbe essere proposto dopo la prima scansione, quando la Colonna B e successive contengono giÓ dei valori dovuti alle scansioni precedenti.

    Quella indicata in "blu", Ŕ solo un miglioramento del Codice; non Ŕ indispensabile ma rende il Codice pi¨ compatto.

    Codice: 
    Option Explicit
    
    Sub Macro_farlocca()
    Dim Cln As Long
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    
        Range("A2").Copy Range("B2")
        Cells(2, 2).TextToColumns Destination:=Range("B2"), DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
            Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
            :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
            Array(7, 1)), TrailingMinusNumbers:=True
        Cln = Cells(2, Columns.Count).End(xlToLeft).Column
            Range(Cells(2, 2), Cells(2, Cln)).Copy
        Range("B4").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
        ActiveSheet.Range("$B$4:$B$200").RemoveDuplicates Columns:=1, Header:=xlNo
        Range("B4:B200").Copy
        Range("B2").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
        Range("B4:B200").ClearContents
        Application.CutCopyMode = False
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
        Cells(2, 2).Select
    End Sub
    Un ringraziamento anche a Gerardo per la Sua Attenzione.



    A disposizione.

    Buona serata a tutti.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

  32. #25

    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    senti chi parla di barare!!!
    la tua sono:
    125+141+54=320 caratteri


    al momento, la formula pi¨ lineare mi sembra quella di Dillina
    Forza Dilly...

    @ninai
    io per˛ ho "barato di meno"

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

  33. #26

    L'avatar di Rubik72
    Clicca e Apri
    Data Registrazione
    Dec 2015
    LocalitÓ
    Cosenza
    EtÓ
    45
    Messaggi
    2833
    Versione Office
    Excel 2013
    Likes ricevuti
    1027
    Likes dati
    983

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Non riesco a trattenermi fino alle 16.43, quindi do le mie soluzioni:
    Formule:
    Codice: 
    =INDICE(STRINGA.ESTRAI($A$2;1+3*(RIF.RIGA(1:20)-1);2);CONFRONTA(FREQUENZA(STRINGA.ESTRAI($A$2;1+3*(RIF.RIGA(1:20)-1);2);STRINGA.ESTRAI($A$2;1+3*(RIF.RIGA(1:20)-1);2));RIGHE($1:1);0))
    VBA:
    Codice: 
    Sub EstraiSenzaDuplicati()
    'by Rubik72
    Dim Matrix As Variant
    Dim i As Long
    
    
    Matrix = Split(Range("A2"), " ")
    
    
    Matrix = EliminaDuplicati(Matrix)
    For i = 1 To UBound(Matrix)
        Cells(2, i + 1) = Matrix(i)
    Next
    
    
    End Sub
    
    
    Function EliminaDuplicati(myArray As Variant) As Variant
    Dim Unici As Collection
    Dim TempArr()
    Dim i As Long
    
    
    Set Unici = New Collection
    
    
    On Error Resume Next
    For i = 0 To UBound(myArray)
        Unici.Add myArray(i), CStr(myArray(i))
    Next i
    On Error GoTo 0
    
    
    ReDim TempArr(1 To Unici.Count)
    For i = 1 To Unici.Count
        TempArr(i) = Unici.Item(i)
    Next
    
    
    EliminaDuplicati = TempArr
    
    
    Set Unici = Nothing
    End Function

  34. I seguenti 4 utenti hanno dato un "Like" a Rubik72 per questo post:


  35. #27
    L'avatar di Raffaele_53
    Clicca e Apri
    Data Registrazione
    Dec 2015
    LocalitÓ
    Binasco
    EtÓ
    64
    Messaggi
    506
    Versione Office
    2007
    Likes ricevuti
    85
    Likes dati
    7

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Sar˛ tonto, mÓ la stringa ? allegato di Gerardo non lo vedo?

  36. #28
    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Buon pomeriggio, Raffaele;
    ti leggo sempre con piacere.
    Citazione Originariamente Scritto da Raffaele_53 Visualizza Messaggio
    Sar˛ tonto, mÓ la stringa ? allegato di Gerardo non lo vedo?
    In realtÓ, devi selezionare "l'immagine", che immagine non Ŕ ma "BBCode":
    ( http://www.forumexcel.it/forum/2-ann...-con-il-bbcode )
    e copiarla in un Foglio di lavoro di Excel.

    @ Rubik72
    Buon pomeriggio, Rubik;
    Riesci sempre a stupirmi con le Tue Soluzioni; dovr˛ studiarmi per bene la Formula e, soprattutto, il Codice VBA; per il momento, Complimenti.


    A disposizione.

    Buona serata.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

  37. #29
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    LocalitÓ
    Catania
    EtÓ
    73
    Messaggi
    3224
    Versione Office
    Excel2010
    Likes ricevuti
    628
    Likes dati
    155

    Re: Primo test di agosto estrarre una lista unica da una stringa di testo

    Buonasera a tutti
    Per˛ non vale! Prima si dice "EDIT: Dimenticavo, NO VBA" e poi invece vi buttate a capofitto.
    Allora prova a dare la mia soluzione.
    Preciso che sfrutto la proprietÓ dell'oggetto Collection che, se si usa la key, non ammette duplicati.
    Ovviamente i dati sono come li ha messi Gerardo in A1 e A2
    questa la macro:
    Codice: 
    Sub prova() 'by Marius
    Dim nomi As New Collection
    Dim nome, i As long, k As long
    uRiga = Cells(Rows.Count, 1).End(xlUp).Row
    For k = 1 To uRiga
        testo = Cells(k, 1).Text
        nome = Split(testo, " ")
        On Error Resume Next
        For i = 0 To UBound(nome)
            nomi.Add nome(i), CStr(nome(i))
        Next i
        For i = 2 To Elenco.Count + 1
            Cells(k, i) = nomi(i - 1)
        Next i
        Set nomi = Nothing
    Next k
    End Sub
    Aspetto le vostre ... critiche oppure i vostri complimenti

    Ciao,
    Mario

  38. #30
    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: Primo test di agosto estrarre una lista unica da una stringa di testo

    Buona sera, Marius;
    perdonami, ma, non riesco a capire dove sbaglio.


    Grazie dell'Attenzione che potrai dedicarmi.


    Buona serata.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

Discussioni Simili

  1. [Risolto] Estrarre elementi di testo da una stringa alfanumerica
    Di SpezzaKorna nel forum Domande su Excel in generale
    Risposte: 12
    Ultimo Messaggio: 30/11/16, 01:13
  2. Far funzionare le formule del primo test di Agosto
    Di Irclen nel forum Problemi, suggerimenti e NovitÓ del forum
    Risposte: 1
    Ultimo Messaggio: 07/08/16, 17:14
  3. Estrarre una stringa di testo
    Di aldomattana nel forum Domande su Excel in generale
    Risposte: 13
    Ultimo Messaggio: 23/07/16, 10:32
  4. Estrarre testo da piu celle ed unificarla in unica cella
    Di BRAZ66 nel forum Domande su Excel in generale
    Risposte: 8
    Ultimo Messaggio: 22/04/16, 15:58
  5. Estrarre la stringa finale di un testo
    Di Gerardo ZuccalÓ nel forum Domande su Excel in generale
    Risposte: 11
    Ultimo Messaggio: 20/08/15, 15:23

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
  •