Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

excel 2003: ottenere i presenti di una colonna

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 10/10/12 23:11

Salve a tutti.
Rieccomi qui a chiedere ancora aiuto.
Ho un nuovo foglio excel con una colonna N in cui ho una "testata" formata dale celle N2....N10, e da un corpo formato dalle cella N20.....Nx.
Nelle celle N20 ... Nx posso scrivere vari tipi di dati (per esempio: pere, mele, banane, ananas, angurie,NULLA)

mi servirebbe una formula da mettere nelle celle da N2 a N10 che mi indichi quali dati (anche se ripetuti) sono inseriti da N20 a Nx
Cerco di spiegarmi con un esempio:

N20 = pere
N21 = mele
N22 = pere
N23 = pere
N24 = NULLA
N25 = pere
N26 = NULLA
N27 = banane
N28 = NULLA
N29 = NULLA
N30 = pere

Nella cella N2 ... N10 dovrei avere (non importa l'ordine) :
pere
mele
banane

Non mi interessa quante volte, ma solo sapere se il dato è presente almeno una volta deve essere riportato nella testata.

Pensate si possa fare ? Grazie
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Sponsor
 

Re: excel 2003: ottenere i presenti di una colonna

Postdi Flash30005 » 11/10/12 00:06

Questa formula fu postata da Anthony e te la ripropongo
Seleziona Le celle Da N20 a Nx (anche oltre) e definisci un nome
Da Menu Inserisci -> Definisci -> Nome
darai nome Elenconomi (ad esempio)

poi nella testata in N2
scriverai questa formula
Codice: Seleziona tutto
=SE((PICCOLO(CONTA.SE(SCARTO(elenconomi;0;0;RIF.RIGA(INDIRETTO("1:"&RIGHE(elenconomi)));1);elenconomi)+RIF.RIGA(elenconomi)/10000;RIF.RIGA(A1)))<2;SCARTO(SCARTO(elenconomi;0;0;1;1);CONFRONTA(PICCOLO(CONTA.SE(SCARTO(elenconomi;0;0;RIF.RIGA(elenconomi)-RIF.RIGA(SCARTO(elenconomi;0;0;1;1))+1;1);elenconomi)+RIF.RIGA(elenconomi)/10000;RIF.RIGA(A1));CONTA.SE(SCARTO(elenconomi;0;0;RIF.RIGA(INDIRETTO("1:"&RIGHE(elenconomi)));1);elenconomi)+RIF.RIGA(elenconomi)/10000;0)-1;0);"")

conferma con CTRL+Maiu+Enter
Trascini fino a N10 (sperando che non siano più di 9 i nomi univoci nell'elenco)
Avrai un elenco di nomi univoci

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2003: ottenere i presenti di una colonna

Postdi Anthony47 » 11/10/12 01:31

La formula sara' certamente perfettisima, ma in alternativa potresti usare Filtro avanzato: Selezione i dati di origine, tab Dati, Ordina e filtra, Avanzato; spunti Copia univoca dei record, selezioni Copia in altra posizione e indichi la destinazione.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13903
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 11/10/12 06:11

Flash30005 ha scritto:Questa formula fu postata da Anthony e te la ripropongo
Seleziona Le celle Da N20 a Nx (anche oltre) e definisci un nome
Da Menu Inserisci -> Definisci -> Nome
darai nome Elenconomi (ad esempio)

poi nella testata in N2
scriverai questa formula
Codice: Seleziona tutto
=SE((PICCOLO(CONTA.SE(SCARTO(elenconomi;0;0;RIF.RIGA(INDIRETTO("1:"&RIGHE(elenconomi)));1);elenconomi)+RIF.RIGA(elenconomi)/10000;RIF.RIGA(A1)))<2;SCARTO(SCARTO(elenconomi;0;0;1;1);CONFRONTA(PICCOLO(CONTA.SE(SCARTO(elenconomi;0;0;RIF.RIGA(elenconomi)-RIF.RIGA(SCARTO(elenconomi;0;0;1;1))+1;1);elenconomi)+RIF.RIGA(elenconomi)/10000;RIF.RIGA(A1));CONTA.SE(SCARTO(elenconomi;0;0;RIF.RIGA(INDIRETTO("1:"&RIGHE(elenconomi)));1);elenconomi)+RIF.RIGA(elenconomi)/10000;0)-1;0);"")

conferma con CTRL+Maiu+Enter
Trascini fino a N10 (sperando che non siano più di 9 i nomi univoci nell'elenco)
Avrai un elenco di nomi univoci

Ciao


Ciao Flash.
Ho fatto come proposto ma nella cella ottego "0" (zero) e nessun risultato ...
Ho visto che nella formula c'e' un riferimento alla cella A1 che nel mio caso non presenta dati, ho provato a sostituirla con N17 (prima cella con dati), ma il risultato non cambia ....

Grazie
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 11/10/12 06:15

Anthony47 ha scritto:La formula sara' certamente perfettisima, ma in alternativa potresti usare Filtro avanzato: Selezione i dati di origine, tab Dati, Ordina e filtra, Avanzato; spunti Copia univoca dei record, selezioni Copia in altra posizione e indichi la destinazione.

Ciao


Ciao Anthony.
La soluzione potrebbe andare, ma non si aggiorna automaticamente. Cioè devo per forza essere io a selezionare , filtro ecc. ecc.
A me servirebbe che man mano che inserisco i dati in colonna venga aggiornato l'elenco.
Potrei creare una macro (col registratore) che faccia questo lavoro, ma posso poi farla eseguire in automatico ogni volta che esco dalle celle della colonna N (così da automatizzare il processo) ? O c'e' qualche altro sistema ?

Grazie.
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Re: excel 2003: ottenere i presenti di una colonna

Postdi Flash30005 » 11/10/12 11:16

Hai definito un nome per quel range (elenconomi)?

ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 11/10/12 11:19

Si. Grazie
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Re: excel 2003: ottenere i presenti di una colonna

Postdi Flash30005 » 11/10/12 12:00

Sicuramente non è stato fatto tutto a dovere

ti invio questo file come test

ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2003: ottenere i presenti di una colonna

Postdi Anthony47 » 11/10/12 14:54

Forse l' equivoco e' su che cosa si intende con "NULLA"
Questa formula e' piu' semplice
Codice: Seleziona tutto
=SE.ERRORE(INDICE(elenconomi;PICCOLO(RIF.RIGA(elenconomi)+10000*(CONTA.SE(SCARTO(elenconomi;0;0;RIF.RIGA(INDIRETTO("1:"&RIGHE(elenconomi)));1);elenconomi)<>1);RIF.RIGA(A1)));"")
Confermare con Contr-Maiusc-Enter
Da scrivere in una cella e poi copiare verso il basso.
Poi pero' per gestire l' errore quando si supera il numero di valori unici sara' necessario inserirla in una formulazione del tipo
Codice: Seleziona tutto
=Se(Val.Errore(LaFormula);"";LaFormula)
Nel caso di XL2007 e 2010 si potra' usare la formulazione
Codice: Seleziona tutto
=Se.Errore(LaFormula;"")


Usando il metodo del filtro avanzato, registra la macro che esegue il filtro avanzato; poi inserisci questo codice nel modulo di codice del foglio su cui lavori:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
CheckArea = "N20:N100" '<<< Adattare
If Application.Intersect(Target, Range(CheckArea)) Is Nothing Then Exit Sub
Application.EnableEvents = False
    Call MacroAdvancedFiltro
Application.EnableEvents = True
End Sub
Dal foglio excel, tasto dx sul tab col nome del foglio; scegli Visualizza codice, copia la macro e incollala nel frame di dx.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13903
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 13/10/12 18:27

Flash30005 ha scritto:Sicuramente non è stato fatto tutto a dovere

ti invio questo file come test

ciao


Ciao. Scusa il ritardo nella risposta ma non ho avuto modo di lavorare sul progetto in questi giorni.
Allora. Ho scaricato il file. Premetto che non capisco perchè quello scritto da me non funziona essendo uguale al tuo .... comunque sia ...
Nel tuo esempio c'e' qualcosa che non va: mi spiego:
se provi a cancellare la prima parola "pere" presente in N20 l'elenco in N2:N5 si trasforma in 0,pere, mele,NULLA, banane arrivando a N6. Stessa cosa se cancelli "pere" da N22. Se poi cancelli "banane" da N27 le'elenco diventa 0,0,pere,mele,NULLA. Se poi si cancellano tutti i NULLA (che non dovrebbero essererci in quanto nulla e' una riga vuota) e si lasciano pere e mele si ottiene un elenco : 0,0,0,0,0,0,0,pere,mele.

Praticamente, se il corpo si allunga e tutte le righe sono piene è tutto ok, ma se poi si cancellano le righe del corpo la testata non va piu' bene.

Grazie
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 13/10/12 18:29

Anthony47 ha scritto:Usando il metodo del filtro avanzato, registra la macro che esegue il filtro avanzato; poi inserisci questo codice nel modulo di codice del foglio su cui lavori:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
CheckArea = "N20:N100" '<<< Adattare
If Application.Intersect(Target, Range(CheckArea)) Is Nothing Then Exit Sub
Application.EnableEvents = False
    Call MacroAdvancedFiltro
Application.EnableEvents = True
End Sub
Dal foglio excel, tasto dx sul tab col nome del foglio; scegli Visualizza codice, copia la macro e incollala nel frame di dx.

Ciao


Ciao. Per quanto riguarda questa soluzione (vba) sembra andare meglio della formula sopra menzionata, ma se cancello tutte le righe della testata mi da errore di vba.

Grazie
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Re: excel 2003: ottenere i presenti di una colonna

Postdi Flash30005 » 14/10/12 09:13

Prova questa macro inserita in un modulo
Codice: Seleziona tutto
Sub NomiUnivoci()

    Range("N20:N150").Copy Destination:=Range("IV20")
    Range("N2:N19").ClearContents
    Range("IV20:IV150").Select
    Selection.Sort Key1:=Range("IV20"), Order1:=xlAscending, Header:=xlGuess _
        , OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        UR = Range("IV" & Rows.Count).End(xlUp).Row
    Range("IV20:IV" & UR).Select
    Range("IV20:IV" & UR).AdvancedFilter Action:=xlFilterInPlace, Unique:=True
    UR2 = Range("IV" & Rows.Count).End(xlUp).Row
    Range("IV20:IV" & UR2).Copy Destination:=Range("N2")
    ActiveSheet.ShowAllData
    Columns("IV").ClearContents
    Range("N2").Select
End Sub


Potrai richiamarla con il codice postato da Anthony, ad ogni variazione del range N20:N150
es.:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
CheckArea = "N20:N150" '<<< Adattare
If Application.Intersect(Target, Range(CheckArea)) Is Nothing Then Exit Sub
Application.EnableEvents = False
    Call NomiUnivoci
Application.EnableEvents = True
End Sub


ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2003: ottenere i presenti di una colonna

Postdi Anthony47 » 14/10/12 11:06

Io avrei risposto
ma se cancello tutte le righe della testata mi da errore di vba.
Che cosa ti da errore di vba? Quale e' il codice completo? Quale errore e dove? Quali testate devi cancellare?
E poi forse hai ancora una formula a disposizione che non hai provato...

Comunque prova prima quanto suggerito da Flash.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13903
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: excel 2003: ottenere i presenti di una colonna

Postdi CANAPONE » 14/10/12 13:52

Ciao,

torno alle formule.

Potresti provare la matriciale da confermare con control+maiusc+invio per estrarre -nell'esempio- un elenco univoco da N20:N50.

Codice: Seleziona tutto
=SE(VAL.ERRORE(INDICE($N$20:$N$50;PICCOLO(SE(VAL.NUMERO(CONFRONTA(RIF.RIGA($A$20:$A$50)-19;CONFRONTA($N$20:$N$50;$N$20:$N$50;0);0));CONFRONTA($N$20:$N$50;$N$20:$N$50;0);"");RIF.RIGA(A1))));"";INDICE($N$20:$N$50;PICCOLO(SE(VAL.NUMERO(CONFRONTA(RIF.RIGA($A$20:$A$50)-19;CONFRONTA($N$20:$N$50;$N$20:$N$50;0);0));CONFRONTA($N$20:$N$50;$N$20:$N$50;0);"");RIF.RIGA(A1))))


Anch'io uso Excel 2003 e sono costretto a raddoppiare la lunghezza della formula non potendo usare SE.ERRORE.


Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 14/10/12 14:20

CANAPONE ha scritto:Ciao,

torno alle formule.

Potresti provare la matriciale da confermare con control+maiusc+invio per estrarre -nell'esempio- un elenco univoco da N20:N50.

Codice: Seleziona tutto
=SE(VAL.ERRORE(INDICE($N$20:$N$50;PICCOLO(SE(VAL.NUMERO(CONFRONTA(RIF.RIGA($A$20:$A$50)-19;CONFRONTA($N$20:$N$50;$N$20:$N$50;0);0));CONFRONTA($N$20:$N$50;$N$20:$N$50;0);"");RIF.RIGA(A1))));"";INDICE($N$20:$N$50;PICCOLO(SE(VAL.NUMERO(CONFRONTA(RIF.RIGA($A$20:$A$50)-19;CONFRONTA($N$20:$N$50;$N$20:$N$50;0);0));CONFRONTA($N$20:$N$50;$N$20:$N$50;0);"");RIF.RIGA(A1))))


Anch'io uso Excel 2003 e sono costretto a raddoppiare la lunghezza della formula non potendo usare SE.ERRORE.


Saluti


Ciao. La soluzione postata funziona perfettamente. (L'unico inconveniente, se si vuole trovare un neo e' che legge in un intervallo fisso e, quindi, se l'operatore aggiungesse od eliminerebbe righe prima della ventesima la formula leggere dati mancanti ...)
Ho provato col codice vba sottostante che elimina tale inconveniente (almeno credo ...)

Codice: Seleziona tutto
Sub NomiUnivoci_new()
   
    For x = 0 To 29
        benef(x) = ""
    Next x
       
    ' trovo la prima riga del corpo (la cerco per evitare che se qualcuno
    ' inserisce o elimina righe nella testata ...)
    PR = 0
    For xben = 1 To 500
        If Trim(Cells(xben, 10).Value) = "Beneficiario finale" Then
            PR = xben + 1
            Exit For
        End If
    Next xben

    ' trovata l'intestazione con PR > 0 ora leggo le righe del corpo
    If PR > 0 Then
    UR = Range("J" & Rows.Count).End(xlUp).Row
        For y = PR To UR
            ' nella cella c'e' un valore
            If Len(Trim(Cells(y, 10).Value)) <> 0 Then
                testben = ""
                testben = Trim(Cells(y, 10).Value)
                ' trovo l'ultimo elemento inserito nell'array
                    For yy = 0 To 29
                        If Len(Trim(benef(yy))) = 0 Then
                            ultimo = yy
                            Exit For
                        End If
                    Next yy
                       
                ' cerco il nome nell'array
                trov = 0
                For y1 = 0 To 29
                    If benef(y1) = testben Then trov = 1
                Next y1
                If trov = 0 Then
                    If ultimo = 0 Then
                        benef(ultimo) = testben
                    Else
                        benef(ultimo) = testben
                    End If
                End If
    End If
Next y

    ' ora cancello le celle riepilogative e poi riscrivo l'array
    For be = 9 To PR - 2
        Cells(be, 10).Value = ""
    Next be
           
    For be = 0 To ultimo
        If Len(Trim(benef(be))) <> 0 Then
            Cells(be + 9, 10).Value = benef(be)
        End If
    Next be
    End If

End Sub


Come vi sembra ? E' migliorabile ?
Grazie
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Re: excel 2003: ottenere i presenti di una colonna

Postdi CANAPONE » 14/10/12 16:11

Ciao,

sempre solo formule se scrivi in C2:C31 i numeri da 1 a 30, in B2 (scrivo in minuscolo le modifiche: ho levato la prima parte)

Codice: Seleziona tutto
=INDICE(indiretto("$N$20:$N$50");PICCOLO(SE(VAL.NUMERO(CONFRONTA(RIF.RIGA(indiretto("$A$20:$A$50"))-19;CONFRONTA(indiretto("$N$20:$N$50";indiretto("$N$20:$N$50");0);0));CONFRONTA(indiretto("$N$20:$N$50");indiretto("$N$20:$N$50");0);"");c2)))


sempre da confermare con control+maiusc+invio

Potresti usare la formttazione condizionale per nascondere gli errori prodotti dalla formula quando non trova altro da elencare.

Esempio

in B2, formattazione condizionale "la formula è"

=val.errore(b2)

e ricopi formula e formattazzione condizionale in basso.

La formula dovrebbe sempre andare a pescare in N2:N50-
Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 14/10/12 20:44

Ok. Grazie a tutti per le soluzioni proposte.
Alla prossima
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 21/10/12 13:37

Flash30005 ha scritto:Potrai richiamarla con il codice postato da Anthony, ad ogni variazione del range N20:N150
es.:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
CheckArea = "N20:N150" '<<< Adattare
If Application.Intersect(Target, Range(CheckArea)) Is Nothing Then Exit Sub
Application.EnableEvents = False
    Call NomiUnivoci
Application.EnableEvents = True
End Sub


ciao


Salve. Riprendo questo post perche' ho una domanda attinente allo stesso.
La soluzione proposta per attivare una routine al cambiamento del valore di una cella in un range proposta sopra funziona perfettamente. Avrei la necessita', pero', di attivare due routine diverse al cambio di due celle diverse. Ho provato a modificare il codice postato con questo:

Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
' -----------------------------------------------------------------
' B E N E F I C I A R I
'------------------------------------------------------------------
PR = 0
    For xben = 1 To 500
        If Trim(Cells(xben, 15).Value) = "Beneficiario finale" Then
            PR = xben + 1
            Exit For
        End If
    Next xben
   
' -----------------------------------------------------------------
' C O N T A N T E   
'------------------------------------------------------------------
PRe = 0
    For xben = 1 To 500
        If Trim(Cells(xben, 13).Value) = "Tagli" Then
            PRe = xben + 1
            Exit For
        End If
    Next xben
   
' *************** AREA BENEFICIARI **************
CheckArea = ("O" & PR & ":O500") '<<< Adattare
If Application.Intersect(Target, Range(CheckArea)) Is Nothing Then
Exit Sub
else
    Call NomiUnivoci_new
endif
' *************** AREA TAGLI **************
CheckArea2 = ("M" & PRe & ":M500") '<<< Adattare
If Application.Intersect(Target, Range(CheckArea2)) Is Nothing Then
Exit Sub
else
    Call totale_tagli
endif
End Sub


Il problema e' che modificando una cella del range "O" viene chiamata la routine NomiUnivoci_new, mentre modificando una cella del range "M" questo non avviene. Ponendo dei punti di interruzione, mi accorgo che entro nella sub solo alla modifica di un valore del range "O" e mai del range "M".

Potreste aiutarmi ?
Grazie
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22

Re: excel 2003: ottenere i presenti di una colonna

Postdi Flash30005 » 21/10/12 18:27

Perché quando viene soddisfatta la prima condizione la macro exce dalla routine con Exit Sub
pertanto devi mettere una etichetta e un Goto
Codice: Seleziona tutto
'...
CheckArea = ("O" & PR & ":O500") '<<< Adattare
If Application.Intersect(Target, Range(CheckArea)) Is Nothing Then
GoTo SaltaO  '<<<< modificare così
Else
   ' Call NomiUnivoci_new
End If
SaltaO:  '<<<< aggiungere etichetta
' *************** AREA TAGLI **************
CheckArea2 = ("M" & PRe & ":M500") '<<< Adattare
'...


Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2003: ottenere i presenti di una colonna

Postdi karug64 » 21/10/12 19:12

Flash30005 ha scritto:Perché quando viene soddisfatta la prima condizione la macro exce dalla routine con Exit Sub
pertanto devi mettere una etichetta e un Goto
Codice: Seleziona tutto
'...
CheckArea = ("O" & PR & ":O500") '<<< Adattare
If Application.Intersect(Target, Range(CheckArea)) Is Nothing Then
GoTo SaltaO  '<<<< modificare così
Else
   ' Call NomiUnivoci_new
End If
SaltaO:  '<<<< aggiungere etichetta
' *************** AREA TAGLI **************
CheckArea2 = ("M" & PRe & ":M500") '<<< Adattare
'...


Ciao



grazie
Office 2010
karug64
Utente Senior
 
Post: 580
Iscritto il: 20/11/11 21:22


Torna a Applicazioni Office Windows


Topic correlati a "excel 2003: ottenere i presenti di una colonna":


Chi c’è in linea

Visitano il forum: Nessuno e 6 ospiti